Frage ist gelöstEine Datei die sich in mehreren Unterordnern befindet mit einer Batch-Datei umbenennen
25.07.2011
11:23:10 Uhr912 Aufrufe
3 Antworten
11:23:10 Uhr
3 Antworten
Noch nicht bewertet
Hallo an Alle,
ich habe einen Ordner mit mehreren Unterordnern. Alle Unterordner haben als Ordnernamen folgenden Aufbau:
JJMMTTJJMMTT
In allen Unterordnern befindet sich eine TXT-Datei, die immer den gleichen Dateinamen, aber andere Inhalte hat.
Nun möchte ich gerne diese TXT-Datei aus allen Unterordnern in einen Temp Ordner kopieren und gleichzeitig umbenennen.
Beispiel:
Ordner "TEST" hat folgende Unterordner:
110701110701
110702110702
110703110703
110704110704
usw.
In jedem Unterordner befindet sich folgende Datei:
TEST123.txt
Diese Datei will ich nun von jedem Unterordner in den Temp Ordner kopieren und mit einem Teil des Ordnernamens umbenennen:
Beispiel:
Von Unterordner "110701110701" die Datei TEST123.txt in Ordner C:\Temp kopieren und in TEST123_110701 umbenennen.
Von Unterordner "110702110702" die Datei TEST123.txt in Ordner C:\Temp kopieren und in TEST123_110702 umbenennen.
Von Unterordner "110703110703" die Datei TEST123.txt in Ordner C:\Temp kopieren und in TEST123_110703 umbenennen.
usw.
Wie kann ich das per Batch-Datei lösen?
Für eure Hilfe schon mal vielen Dank.
Viele Grüße
abuelito
ich habe einen Ordner mit mehreren Unterordnern. Alle Unterordner haben als Ordnernamen folgenden Aufbau:
JJMMTTJJMMTT
In allen Unterordnern befindet sich eine TXT-Datei, die immer den gleichen Dateinamen, aber andere Inhalte hat.
Nun möchte ich gerne diese TXT-Datei aus allen Unterordnern in einen Temp Ordner kopieren und gleichzeitig umbenennen.
Beispiel:
Ordner "TEST" hat folgende Unterordner:
110701110701
110702110702
110703110703
110704110704
usw.
In jedem Unterordner befindet sich folgende Datei:
TEST123.txt
Diese Datei will ich nun von jedem Unterordner in den Temp Ordner kopieren und mit einem Teil des Ordnernamens umbenennen:
Beispiel:
Von Unterordner "110701110701" die Datei TEST123.txt in Ordner C:\Temp kopieren und in TEST123_110701 umbenennen.
Von Unterordner "110702110702" die Datei TEST123.txt in Ordner C:\Temp kopieren und in TEST123_110702 umbenennen.
Von Unterordner "110703110703" die Datei TEST123.txt in Ordner C:\Temp kopieren und in TEST123_110703 umbenennen.
usw.
Wie kann ich das per Batch-Datei lösen?
Für eure Hilfe schon mal vielen Dank.
Viele Grüße
abuelito
TimoBeil schreibt am 25.07.2011 um 12:04:55 Uhr
Moin, edit und willkommen /edit
Gruß
- mach mal eine Dosbos auf
- trage da "for /?" gefolgt von einem Return ein
- Wenn du überhaupt keine Idee hast, schau hier nach der "Anleitung für For"
- Und wenn das, was du dann gezimmert hast immer noch nicht richtig läuft, gerne helfen wir die weiter, deinen Ansatz zu verbessern.
Gruß
Friemler schreibt am 25.07.2011 um 12:17:02 Uhr
Hallo abuelito,
teste mal das hier:
Gruß
Friemler
teste mal das hier:
01.
@echo off & setlocal 02.
03.
04.
set "SrcDir=E:\Test" 05.
set "DestDir=C:\Temp" 06.
set "TextFile=test123.txt" 07.
08.
09.
for /f "delims=" %%f in ('dir /s /b /a:-d "%SrcDir%\%TextFile%"') do ( 10.
set "File=%%f" 11.
call :ProcessFile 12.
) 13.
14.
exit /b 15.
16.
17.
18.
:ProcessFile 19.
for %%i in ("%File%") do set "FilePath=%%~dpi" 20.
for %%i in ("%File%") do set "FileName=%%~ni" 21.
for %%i in ("%File%") do set "FileExt=%%~xi" 22.
23.
set "FilePath=%FilePath:~0,-1%" 24.
for %%i in ("%FilePath%") do set "ParentFolder=%%~nxi" 25.
set "Addendum=%ParentFolder:~0,6%" 26.
27.
copy "%File%" "%DestDir%\%FileName%_%Addendum%%FileExt%" 28.
exit /bGruß
Friemler












