Dateien in bestimmte Ordner verschieben
Hallo zusammen,
bin neu hier und plage mich seit geraumer Zeit mit einem für mich unlösbarem Problem herum.
Nun habe ich dieses Forum gefunden und hoffe auf Eure Unterstützung.
Die Ausgangslage ist Folgende :
Ich habe in einem Verzeichnis tausende (ca. 8000) Bilder (jpg) und möchte diese anhand einer bestimmten Anzahl Stellen des Dateinamens in ein Verzeichnis verschieben.
Also z.B. : Verzeichnisinhalt
BildA_4711.jpg
BildA_4712.jpg
BildB_4711.jpg
BildB_4712.jpg
Abhängig vom Dateinamen sollen alle Bilder mit Namen BildA*.jpg in Ordner \BildA , die Bilder mit Dateinamen BildB*.jpg in Ordner \BildB verschoben werden.
Der Ordnername soll analog der bestimmten Anzahl Stellen des Filenamens lauten. Ist der jeweilige Ordner nicht vorhanden, einfach anlegen, ansonsten nur das jeweilige File verschieben.
Denke für euch Profis ist das kein Problem, ich bin am Verzweifeln.
Im Voraus besten Dank
Grüsse - Armin
bin neu hier und plage mich seit geraumer Zeit mit einem für mich unlösbarem Problem herum.
Nun habe ich dieses Forum gefunden und hoffe auf Eure Unterstützung.
Die Ausgangslage ist Folgende :
Ich habe in einem Verzeichnis tausende (ca. 8000) Bilder (jpg) und möchte diese anhand einer bestimmten Anzahl Stellen des Dateinamens in ein Verzeichnis verschieben.
Also z.B. : Verzeichnisinhalt
BildA_4711.jpg
BildA_4712.jpg
BildB_4711.jpg
BildB_4712.jpg
Abhängig vom Dateinamen sollen alle Bilder mit Namen BildA*.jpg in Ordner \BildA , die Bilder mit Dateinamen BildB*.jpg in Ordner \BildB verschoben werden.
Der Ordnername soll analog der bestimmten Anzahl Stellen des Filenamens lauten. Ist der jeweilige Ordner nicht vorhanden, einfach anlegen, ansonsten nur das jeweilige File verschieben.
Denke für euch Profis ist das kein Problem, ich bin am Verzweifeln.
Im Voraus besten Dank
Grüsse - Armin
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 181866
Url: https://administrator.de/contentid/181866
Ausgedruckt am: 23.11.2024 um 04:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo Armin1893 und willkommen im Forum!
Wenn doch offensichtlich der Unterstrich als Trennzeichen verwendet werden kann, sollte doch etwas in der Art funktionieren (ist allerdings ungetestet):
Zum Testen solltest Du nur mal ein paar Bilder in einen anderen Quell-Ordner kopieren ...
Grüße
bastla
Wenn doch offensichtlich der Unterstrich als Trennzeichen verwendet werden kann, sollte doch etwas in der Art funktionieren (ist allerdings ungetestet):
@echo off & setlocal
set "Quelle=D:\Das Verzeichnis mit den tausenden Bildern"
set "Ziel=D:\Das Verzeichnis mit den Unterordnern"
pushd "%Quelle%"
for /f "delims=_" %%i in ('dir /b *.jpg') do if exist "%%i_*.jpg" (
md "%Ziel%\%%i" 2>nul
move "%%i_*.jp" "%Ziel%\%%i\"
)
popd
Grüße
bastla
Hallo Armin1893!
Dann eben so:
Grüße
bastla
Dann eben so:
@echo off & setlocal
set "Quelle=D:\Das Verzeichnis mit den tausenden Bildern"
set "Ziel=D:\Das Verzeichnis mit den Unterordnern"
set "Typ=jpg"
set /a Stellen=8
pushd "%Quelle%"
for /f "delims=" %%i in ('dir /b *.%Typ%') do call :ProcessFile "%%i"
popd
goto :eof
:ProcessFile
set "Name=%~n1"
call set "Ordner=%%Name:~,%Stellen%%%"
md "%Ziel%\%Ordner%" 2>nul
move %1 "%Ziel%\%Ordner%\"
goto :eof
bastla