Zum Forum springen
Suche jemanden mit ...
 
Benachrichtigungen
Alles löschen

[Geschlossen] Suche jemanden mit Ahnung von Batchdateien

6 Beiträge
3 Benutzer
0 Reactions
631 Ansichten

und zwar geht es darum... ich habe einen Ordner mit ca 3000 Bildateien. bei ca 1200 davon, muss ich ein H_ vor den alten Dateinamen setzten. Welche Dateien das sind, kann ich anhand einer txt datei sehen.
Gibt es eine Möglichkeit
a) per Batchdatei, direkt die dateien umzubennen?
oder aber
b) per Batchdatei die Dateien die umbenannt werden sollen, in einen anderen Ordner zu verschieben.

Dabei wäre es kein Problem, wenn da zu jeder Datei die ich brauche der Name auftaucht, da ich diese ja schon in einer txt Datei habe und so per copy&paste arbeiten kann.


5 Antworten
netsrak
Beigetreten: 11.03.2006

Lad dir den Total Commander von www.ghisler.com der hat eine eingebaute Mehrfach Datei Umbenenn Funktion und ist auch sonst ein Rundum Glücklich Paket.


Original von habi5586
und zwar geht es darum... ich habe einen Ordner mit ca 3000 Bildateien. bei ca 1200 davon, muss ich ein H_ vor den alten Dateinamen setzten. Welche Dateien das sind, kann ich anhand einer txt datei sehen.

Wie ist denn das Format der Textdatei - also wie sind darin die Daten abgespeichert und was steht da drin? Nur die Namen Zeile per Zeile?

Gibt es eine Möglichkeit
a) per Batchdatei, direkt die dateien umzubennen?
oder aber
b) per Batchdatei die Dateien die umbenannt werden sollen, in einen anderen Ordner zu verschieben.

a) Ja
b) Ja

Dabei wäre es kein Problem, wenn da zu jeder Datei die ich brauche der Name auftaucht

Versteh ich nicht, was du damit sagen willst.

Gruss,
Alex


wenn die batchdatei z.B. so aussehen muss

name xyz.jpg to H_xyz.jpg

wovon ich ausgehe, da die namen ganz unterschiedlich sind. Aber so eine Batchdatei wäre relativ schnell zu erstellen, da ich ja die namen

xyz.jpg H_xyz.jpg schon in einer txt datei stehen habe

das format ist atm etwas wirr, lie�?e sich aber auf

originalname neuername

problemlos reduzieren

achja, @totalcommander. der bringt mir so erstmal nichts, da ich in dem ordner dateien habe, die umbennant werden müssen und einige, die nicht umbenannt werden müssen


Original von habi5586
das format ist atm etwas wirr, lie�?e sich aber auf
originalname neuername
problemlos reduzieren

Hab mal was zusammengehackt, was nur die Originalnamen benötigt. Einfach eine Datei, in der in jeder Zeile der Name der Datei steht, die umbenannt werden soll. Keine Leerzeichen davor oder danach einfügen und keine vollständigen Pfadangaben!!

Format:
----------------
datei1.png
datei2.png
----------------

Aufruf: myrename.cmd <prefix> < Liste.txt
Beispiel: myrename.cmd "H_" < Liste.txt

Skript: myrename.cmd
@echo off
REM
REM Aufruf: myrename.cmd <prefix> < <txt-datei>
REM
REM <txt-datei> enthaelt die Dateinamen der Dateien, die mit dem
REM Prefix <prefix> versehen werden sollen. Jeder Dateiname muss
REM in einer einzelnen Zeile stehen. Die Dateinamen duerfen keine
REM Pfadangaben enthalten. Das Skript muss aus dem Verzeichnis
REM aufgerufen werden, in dem auch die Dateien liegen, die umbenannt
REM werden sollen.
REM
REM Beispiel:
REM ---------
REM
REM Textdatei "Liste.txt":
REM ----------------------------------
REM datei1.png
REM datei2.gif
REM datei234.jpg
REM ----------------------------------
REM
REM Neues Prefix der Dateien: "h_"
REM
REM Aufruf: myrename "h_" < Liste.txt
REM
REM
REM Bilder sollen in ein anderes Verzeichnis verschoben werden: "c:\bilder\"
REM Der Pfad muss dabei mit einem '\' enden!
REM
REM Aufruf: myrename "c:\bilder\" < Liste.txt
REM
REM
REM Bilder sollen verschoben werden und mit dem Prefix "h_" versehen werden.
REM
REM Aufruf: myrename "c:\bilder\h_" < Liste.txt
REM

set prefix=%~1
set lastfile=

:readnext
set /p infile=

if "%infile%"=="%lastfile%" goto end
set lastfile=%infile%

echo Renaming "%infile%" to "%prefix%%infile%"...
move "%infile%" "%prefix%%infile%"

goto readnext

:end
echo All Done.

ACHTUNG: Ich hab das Skript in 2 Mins zusammengehackt und nicht gross getestet. Es besteht also die Möglichkeit, dass es all deine Daten schrottet. Am besten du backupst deinen ganzen Bilder-Ordner vorher.


jo, hab den ordner eh auf cd (: aber ich probier das mal aus und hoffe, dass es funktioniert

jo, habs ausprobiert und das hat wunderbar funktioniert (:
evtl hätte ich noch eine bitte an dich (:
kannst du evtl noch was einbauen, dass dabei eine txt datei erstellt wird, in die alle Dateien eingetragen werden, die nicht verschoben werden können, weil sie nicht vorhanden sind?
habe nämlich gerade festgestellt, dass es nicht zu jeder datei die in der txt steht eine Bilddatei gibt und nun muss ich noch alle Bilddateien, die umbenannt werden sollen, aber nicht vorhanden sind in eine txt datei schreiben und das ist bei der Menge von Hand recht kompliziert
wahlweise wäre auch ein Programm oder batchdatei ganz gut, die 2 txt dateien miteinander vergleichen kann

edit: thx (: brauch nichts mehr, ultraedit konnte 2 Listen abgleichen und die unterschiede in einer neuen txt datei speichern (:

danke nochmal für das gro�?artige Programm!!!