mehrere Bilddateien gleichzeitig umbenennen mit einer Batch Datei?

2 Antworten

@echo off
Setlocal EnableDelayedExpansion
set Counter=0
cd /D "P:\fad\zu\den\Dateien"
FOR /F "delims=" %%A IN ('dir /AD /B "Unbenannt - Kopie*"') DO (
  set /a Counter+=1
  ren "%%~nxA" "Wunschname !Counter!.Endung"
)

Der SETLOCAL-Befehl erlaubt das Nutzen von Variablen innerhalb von Klammern

Der Counter dient dazu, die Dateien durchzunummerieren.

Der CD-Befehl (Change Directory) wechselt in den Ordner, wo die Bilder liegen.

Der FOR-Befehl analysiert die Ausgabe des DIR-Befehls, welcher die Dateien im aktuellen Ordner anzeigt.

SET/A löst eine Rechenaufgabe. Hier wird immer um eins hochgezählt.

Der REN-Befehl (REName) benennt die Dateien um.

meisterluehrs 
Fragesteller
 10.09.2015, 08:07

@echo offSetlocal EnableDelayedExpansionset Counter=0cd /D "C:\Users\aluehrs\Desktop\unbenennen\Unbenannt - Kopie 1.png"FOR /F "delims=" %%A IN ('dir /AD /B "Unbenannt - Kopie 1"') DO ( set /a Counter+=1 ren "%%~nxA" "123 !Counter!.png")

so habe ich das jetzt auf meine Daten umgeändert, doch es Funktioniert nicht. :/ hast du vlt ne ahnung wie es richtig ist ?

0
S1r1us13  10.09.2015, 18:20
@meisterluehrs

Der CD-Befehl muss zu dem Ordner führen, nicht zu einer Datei.

Im DIR-Befehl muss der Stern bleiben, er darf nicht durch eine 1 ersetzt werden.

0

Höre auf Dir unnötige Arbeit zu machen ... lade Dir TOTALCOMMANDER herunter... dadrin hat es ein geniales "Umbenenn-Tool" ... damit geht das viel schneller und sicherer. TOTALCOMMANDER ist zwar "Shareware" aber funktionniert, ohne Einschränkungen, auch ohne kaufen und ewig..

meisterluehrs 
Fragesteller
 09.09.2015, 15:33

geht nur leider nicht, wenn ich es für die Schule machen soll mit hilfe einer Batch Datei ... :/

0
ctest  09.09.2015, 16:13
@meisterluehrs

Sage dem Lehrer, er soll aufhören, das "Rad neu zu erfinden" .... so etwas mit einem Batch-Job zu machen, war vor 30 Jahren noch gerechtfertigt. Jetzt machen das nur noch Idioten.

Zudem wird ein Bat-Job nicht mit den jetzt verwendenten Dateinamen fertig.

0