Dateien umbenennen

26/02/2008 - 17:44 von Harry | Report spam
Hallo NG

Ich suche schon seit làngerem eine komvortable möglichkeit mehrere Bild
Dateien auf einmal umzubenennen.
Grund dafür ist dass meine Digicam nach 10000 Fotos wieder mit 00000
anfàngt zu zàhlen.
Nach Auskunft von Sony ist dies nicht zu àndern.

Wie gesagt ich habe mehr als 10.000 Fotos die alle zb. DSC01234.jpg heissen.

Das letze Foto mit hoher Nummer hies also DSC09999.jpg
Und das nàchste dann also DSC00000.jpg
Da ich meine Fotos aber in Order archiviere kommt es früher oder spàter
zu einem Konflikt, da ich die Originalfotos beim Name belassen will.

Was ich möchte ist eigentlich nur dass ein Script die erste 0 in eine 1
umbenennt.

Jetzt habe ich ein kurzes Script gefunden das meinen Wunsch schon fast
erfüllt, da gibt es nur noch ein kleines Problem.

Das Script benennt alle Nullen in Einsen um.
Also auch zb. DSC01200.jpg in DSC11211.jpg
Genau das sollte aber nicht passieren, denn ich möchte wie gesagt nur
dass die erste Null in eine Eins umbenannt wird.

Bitte kann mir jemand sagen wie man das Script àndern muss um den
gewünschten Erfolg zu haben?

Gruß Harry K.

Script:

@echo off
goto Start
-
Dieses Programm wird alle Dateien im gegenwàrtigen Verzeichnis
umbenennen, indem die Zeichenfolge {alt} in den Dateinamen durch
die Zeichenfolge {neu} ersetzt wird.
Beispiel:
set alt00
set neu=-2008
Die Datei 12340000.jpg wird auf 1234-2008.jpg umbenannt.
Die Datei 9970000.jpg wird auf 976-2008.jpg umbenannt.
Die folgende Einstellungen müssen weiter unten vorgenommen werden
set aktiv=nein (nein=bloss Probelauf, ja=Umbenennen)
set sub=ja (ja=Unterverzeichnisse bearbeiten,
nein=Unterverzeichnisse nicht bearbeiten)
set typ=jpg (Dateityp. Z.B. jpg für Bilderdateien)
set alt00 (Ursprüngliche Zeichenfolge)
set neu=-2008 (Gewünschte Zeichenfolge)
Datein werden nicht umbenannt, falls eine gleichnamige
Datei schon existiert.
Falls Dateinamen existieren, welche die Zeichen %, ^ oder &
enthalten, wird das Programm nicht ausgeführt. In solchen
Fàllen ist das entsprechende VB Script Programm zu benutzen.

:Start
rem --
rem Du musst die nàchsten 5 Zeilen deiner Umgebung anpassen!
rem --
set aktiv=ja
set sub=nein
set typ=jpg
set alt=0
set neu=1
rem --
rem Die Einstellungen "aktiv" und "sub" bearbeiten
rem --
setlocal EnableDelayedExpansion
if /i %aktiv%==ja (set cmd=if not) else (set cmd=rem)
if /i %sub%==ja (set switch=/s) else (set switch=)
rem --
rem Eine Liste aller Dateien aufstellen. Gibt es problematische Zeichen?
rem --
dir /b /a-d %switch% *.%typ% > "%temp%\dir.txt"
findstr "%% ^ &" "%temp%\dir.txt" > nul && goto Error
rem --
rem Die Dateien umbenennen
rem --
for /F "delims=" %%a in ('type "%temp%\dir.txt"') do (
set Name1=%%a
call set Name2=!Name1:%alt%=%neu%!
if not "!Name2!"=="!Name1!" echo ren "!Name1!" "!Name2!"
%cmd% "!Name2!"=="!Name1!" ren "!Name1!" "!Name2!"
)
rem --
rem Programmende
rem --
:Exit
echo.
echo Dieses Fenster mit der Leertaste schliessen.
pause > nul
goto :eof
rem --
rem Problematische Zeichen anzeigen
rem --
:Error
echo.
echo Warnung: Die folgenden Dateinamen enthalten Zeichen, welche
echo dieses Batchprogramm nicht verarbeiten kann.
findstr "%% ^ &" "%temp%\dir.txt"
goto :Exit
 

Lesen sie die antworten

#1 Ralf Breuer
26/02/2008 - 18:09 | Warnen spam
Harry schrieb:

Hallo Harry,

Ich suche schon seit làngerem eine komvortable möglichkeit mehrere
Bild Dateien auf einmal umzubenennen.



Schau Dir das mal an:
http://www.irfanview.net/

Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen

Ähnliche fragen