Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

mehrere dateien umbenennen mit name und nummer

Frage Entwicklung Batch & Shell

(Level 1)

27.11.2006, aktualisiert 09.03.2007, 18201 Aufrufe, 11 Kommentare

Hallo

Ich habe 359 unterschiedliche dateien ( Bilder ) die möchte ich alle mit einem namen
und fortlaufend umbenennen.

So wie das der TotalCommander macht - das möchte ich aber mit einer Bat-Datei


haus.jpg urlaub2007-001
auto.jpg urlaub2007-002
frau.jpg urlaub2007-003
xxx1.jpg urlaub2007-004
xx7.jpg urlaub2007-005
usw
Mitglied: y3k
27.11.2006 um 18:26 Uhr
Hi,

also ohne jetzt viel Gehirnschmalz in eine batch zu stecken: Irfanview oder Xnview können das sehr elegant!

Viele Grüße
Bitte warten ..
Mitglied: gemini
27.11.2006 um 18:49 Uhr
Hallo hugo,

das geht auch mit XP-Boardmitteln.

Markiere alle Dateien, die du umbenennen willst > Rechtsklick 'Umbenennen' > Bei einer Datei das Präfix und die Dateiendung angeben > Enter > Sicherheitsabfrage bestätigen
Voilà

Manko: Die Nummerierung erfolgt in Klammern, also urlaub2007 (1).jpg etc.

Alternative: Ein Script oder ein Tool, bspw. RenameFiles

HTH,
gemini
Bitte warten ..
Mitglied: Biber
27.11.2006 um 19:03 Uhr
Da würde ich auch keinen Schmalz reinstecken.

An den CMD-Prompt, in das richtige Verzeichnis und..
01.
>@set /a x=1000 && for %i in (*.txt) do @Set /a "x+=1">nul & <b>@ECHO</b> rename %i Urlaub2007-!x:~-3!%~xi 
02.
<i>rename echocolon.txt Urlaub2007-001.txt 
03.
rename testjoe.txt Urlaub2007-002.txt 
04.
rename lgo.txt Urlaub2007-003.txt 
05.
rename testhidden.txt Urlaub2007-004.txt 
06.
rename default.txt Urlaub2007-005.txt</i> 
07.
...
[Das Kursive ist die Ausgabe...der "Code" nur die erste Zeile]

Okay, ich habe jetzt *.txt genommen, weil ich noch gar keine Urlaubs-.jpg's aus 2007 habe...
Und das @ECHO muss natürlich raus.

Als Batch je ein "%"-Zeichen mehr vor %i und %x.
Und in die erste Zeile "@echo off & setlocal EnableDelayedExpansion".

[Das ist bei mir IMMER geschaltet, deshalb geht es bei mir am Prompt.]

HTH Biber
[Edit] @gemini
Manko: Die Nummerierung erfolgt in Klammern, also urlaub2007 (1).jpg etc
Das könnte ich per Batch reparieren....
[/Edit]
Bitte warten ..
Mitglied: erkan
27.11.2006 um 20:01 Uhr
Ein sehr schönes und umfangreiches Tool, das zudem kostenlos ist ("Mailware"):

http://www.1-4a.com/rename/

sehr zu empfeheln

Gruß
Bitte warten ..
Mitglied: luximwalde
08.03.2007 um 18:31 Uhr
Hallo biber,
ich möchte gern Deinen Code aus o.g. Beitrag zu folgendem Zweck einsetzen: mehrere .jpg-Dateien mit x-beliebigem Dateinamen sollen in das Format bild-001.jpg bild-002.jpg usw. umbenannt werden und zwar in der Reihenfolge wie sie zuvor alphabetisch fortlaufend geordnet waren. Ich habe wie folgt Dein Code als Batch-Datei verwendet:
01.
@echo off & setlocal EnableDelayedExpansion 
02.
@set /a x=1000 && for %%i in (*.jpg) do @Set /a "x+=1">nul & rename %%i bild-!x:~-3!%%~xi
Allerdings passiert nun folgendes Problem. Die Dateien werden beim erstmaligen Ausführen in die Nummerierung beginnend mit bild-002.jpg bild-003.jpg usw. umbenannt. -001 wird nicht berücksichtigt. Und die erste Datei ist nicht die erste wie zuvor alphabetisch geordnet, sondern die Letzte. Führe ich die Datei abermals aus, wird die Nummerierung korrekt ausgeführt. Die zuvor letzte Datei ist nun an vorletzter Stelle, und die eben Erste an letzter, wie bei erstem Ausführen.

Es wäre sehr nett, wenn Du mir einen Lösungsvorschlag posten könntest. Ich habe bereits das Forum durchforstet, allerdings keine Antwort darauf gefunden.

besten Dank und schöne Grüße
Lutz /der luximwalde
Bitte warten ..
Mitglied: Biber
08.03.2007 um 22:19 Uhr
Moin luximwalde,

willkommen im Forum.

Hmmmmmmmm.
Ich habe es eben auch nochmal so nachgestellt, wie ich es damals gepostet hatte...
...works as designed.. (bei mir).

Aber ich verwette meine Sammlung der schönsten M$-Fehlermeldungen, dass das genau die Antwort ist, die Du bestimmt nicht hören wolltest...

Also - dass der CMD-Interpreter mal aus Versehen mit dem Hoch-Zählen bei 1002 statt bei 1001 anfängt, können wir selbst bei Bill's PraktikantInnen ausschliessen...

Also kann es eigentlich nur so sein, dass das Umbenennen selbst in die Grütze geht.
Das wiederum kann vier (oder mehr) Gründe haben:
- die Datei wird nicht gefunden, weil sie "Leerzeichen im Namen.jpg" heißt
- die Datei wird nicht gefunden, weil sie Umlaute im Namen hat und CHCP falsch eingestellt ist.
- die Datei wird nicht umbenannt, weil die Rechte fehlen
- die Datei wird nicht umbenannt weil eine gleichnamige Datei schon existiert

Variante 1 und 4 sind die wahrscheinlichsten.
Bitte ändere mal (zum Testen) auf:
01.
@set /a x=1000>nul && for %%i in (*.jpg) do @Set /a "x+=1">nul & @echo rename "%%i" bild-!x:~-3!%%~xi
..und poste mal die ersten Ausgabezeilen.

Gruss
Biber
Bitte warten ..
Mitglied: luximwalde
08.03.2007 um 23:07 Uhr
Hi biber,

vielen Dank für die schnelle Mühe. Sehr nett. Also nach Ausführen des Batch (Deine Testversion) wird im DOS-fenster folgendes angezeigt:
01.
rename "abcde.jpg"  bild-1.jpg 
02.
rename "bcdef.jpg"  bild-2.jpg 
03.
rename "cdefg.jpg"  bild-3.jpg 
04.
rename "defgh.jpg"  bild-4.jpg
Das ist augenscheinlich genau das gewünschte Ergebnis. Allerdings wird jetzt real nicht umbenannt. Liegt das an dem @echo vor rename?

beste Grüße
Lutz
Bitte warten ..
Mitglied: Biber
09.03.2007 um 07:33 Uhr
Moin Lutz,

jepp, dass real nicht umbenannt wird, liegt an dem "echo"... sollte ja nur ein Test sein.

Also dann - Phase II:
wenn es denn bei der ersten Dateien Datei passiert, dann schränken wir es doch mal auf diese ein.
01.
::----testbatchII.bat 
02.
@echo off & setlocal enableDelayedExpansion 
03.
set /a x=1000>nul && for %%i in (abcde.jpg) do Set /a "x+=1">nul & rename "%%i" bild-!x:~-3!%%~xi
[Ich weiß, ist lästig, aber anders kommen wir nicht ran an den Fehler]

- Mit Glück kommt jetzt beim Rename ein Fehler auf den Bildschirm.

Gruss
Biber
Bitte warten ..
Mitglied: luximwalde
09.03.2007 um 14:08 Uhr
Hallo Biber,
das ist in der Tat ganz seltsam. Jetzt sind wir aber einen Schritt weiter und die Erkenntnis ist folgende: die einzelne Bilddatei abcde.jpg oder bcdef.jpg oder... wird jeweils mit bild-1.jpg korrekt umbenannt. Sind aber mehrere Bilder mit dieser Namensgebeung im ordner umzubenennen, fängt es mit -2.jpg an. Ist doch seltsam. Es muss daher an der Namenskombination liegen, da in den Namen mehrere Buchstaben gleich in den anderen Namen vorkommen. Das Batch ist da scheinbar "wählerisch". Zumal es geht auch mit einer Datei nicht: Ich habe einen Namen herausgefunden, der auch als einzelne Datei sofort mit bild-2.jpg umbenannt wird: aftermidnight.jpg. Klingt fast geheimnisvoll und ist zum schmunzeln. Kannst es ja bei Dir mal testen. Was hat dieses Wort, was andere nicht haben.
Oder leidet mein Rechner oder Namensdepressionen...

Ergänzung: z.B. werden auch abc-01.jpg abc-02.jpg abc-03.jpg beginnend bei bild-2.jpg umbenannt, hingegen pic-01.jpg pic-02.jpg pic-03.jpg wird korrekt ab bild-1.jpg umbenannt. Wo kann da der Unterschied fürs batchen liegen? Wenn wir das wissen, ist es gelöst.


schöne Grüße
Lutz
Bitte warten ..
Mitglied: Biber
09.03.2007 um 14:34 Uhr
Moin Lutz,

lässt sich (wie zu erwarten war) nicht bei mir reproduzieren.

01.
>@set /a x=1000>nul && for %i in (a*.jpg) do @Set /a "x+=1">nul & @echo rename "%~dpnxi" bild-!x:~-3!%~xi 
02.
rename "D:\temp\aftermidnight zwei.jpg" bild-001.jpg 
03.
rename "D:\temp\aftermidnight.jpg" bild-002.jpg 
04.
rename "D:\temp\aftermidnight.jpgx" bild-003.jpgx 
05.
(=14:22:58  D:\temp=) 
06.
>@set /a x=1000>nul && for %i in (a*.jpg) do @Set /a "x+=1">nul & @rename "%i" bild-!x:~-3!%~xi 
07.
 
08.
(=14:23:05  D:\temp=) 
09.
>dir b*.jpg |find ".jpg" 
10.
09.03.2007  14:19                 4 bild-001.jpg 
11.
09.03.2007  14:18                 4 bild-002.jpg 
12.
09.03.2007  14:20                 4 bild-003.jpgx 
13.
 
14.
(=14:23:09  D:\temp=) 
15.
>
Ratlos guck
Vielleicht hat noch jemand eine Idee... sonst musst Du den Rechner wohl einschicken....

Gruss
Biber
Bitte warten ..
Mitglied: luximwalde
09.03.2007 um 15:54 Uhr
Hi Biber,

danke für Deine Geduld mit diesem "Phänomen". Mich kratzt das auch schon. Im DOS-Fenster bei der Testversion (mit echo vor rename) wird das in ALLEN Fällen immer korrekt angezeigt. Wie beschrieben jedoch beim realen Umbenennen beginnt die Bilderfolge in den speziellen Fällen mit -2.jpg. Das Umbennen auf Batch-Ebene ist wohl bis zum dem Punkt wo die Dateien umbenannt werden sollen korrekt. Ratlosigkeit, ja. Ich teste das mal auf einem anderen Rechner.

beste Grüße
Lutz
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows 7
gelöst Mehrere Dateien in Windows umbenennen mit Batchjob (4)

Frage von Jeduja zum Thema Windows 7 ...

Batch & Shell
gelöst Verschieben und Umbenennen von Video-Dateien anhand der Nummer im Namen (3)

Frage von Foja.Filmer zum Thema Batch & Shell ...

Linux Tools
CURL mehrere Dateien vom ftp-Server herunterladen (10)

Frage von highpriest zum Thema Linux Tools ...

Microsoft Office
Excel VBA "SVERWEIS" über mehrere Dateien in Ordner (2)

Frage von Acht85 zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...