Mehrere Dateien Umbenennen und in Ordner verschieben
Hallo zusammen
Ich habe in einem Ordner mehrere Dateien nach dem Schema:
abc-123_text.jpg
Diese sollen in einen neu zu erstellenden Ordner verschoben werden nach dem Schema:
abc123/text.jpg
Wie kann ich das mit einer Batch Datei lösen, dass ich das auch in anderen Ordnern ausführen kann?
Ich habe in einem Ordner mehrere Dateien nach dem Schema:
abc-123_text.jpg
Diese sollen in einen neu zu erstellenden Ordner verschoben werden nach dem Schema:
abc123/text.jpg
Wie kann ich das mit einer Batch Datei lösen, dass ich das auch in anderen Ordnern ausführen kann?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 397734
Url: https://administrator.de/forum/mehrere-dateien-umbenennen-und-in-ordner-verschieben-397734.html
Ausgedruckt am: 02.05.2025 um 00:05 Uhr
8 Kommentare
Neuester Kommentar

@echo off &setlocal
set "ordner=D:\Daten"
for %%a in ("%ordner%\*.jpg") do (
for /f "tokens=1,2 delims=_" %%b in ("%%~na") do (
md "%ordner%\%%b" >nul 2>&1
move "%%a" "%ordner%\%%b\%%c%%~xa"
)
)

@echo off &setlocal ENABLEDELAYEDEXPANSION
set "ordner=D:\Daten"
for %%a in ("%ordner%\*.jpg") do (
for /f "tokens=1,2 delims=_" %%b in ("%%~na") do (
set "name=%%b"
set "target=%ordner%\!name:-=!"
md "!target!" >nul 2>&1
move "%%a" "!target!\%%c%%~xa"
)
)

Dann bitte auch nicht Wie kann ich einen Beitrag als gelöst markieren? vergessen.

Falls "text" noch mehr Unterstriche/Ausrufezeichen enthalten sollte,
würde ich weitere tokens mit einem abschließenden "*" unterbinden.
Ganz ohne DelayedExpansion:
Gruß
LotPings
würde ich weitere tokens mit einem abschließenden "*" unterbinden.
Ganz ohne DelayedExpansion:
@echo off
set "ordner=D:\Daten"
for %%a in ("%ordner%\*.jpg") do (
for /f "tokens=1-2* delims=_-" %%b in ("%%~nxa") do (
md "%ordner%\%%b%%c" >nul 2>&1
move "%%a" "%ordner%\%%b%%c\%%d"
)
)
Gruß
LotPings