Bildzähler erhöhen
Hallo Liste, habe ein kleines Problem: Habe ein paar hundert Bilder, die ich aufgrund falsch vergebener Nummerierung nachträglich neu nummerieren möchte. Original | Umbenannt --------------------------------- DSC_1234.* Nummer +8 DSC_1242.* DSC_1235.* DSC_1243.* DSC_1236.* DSC_1244.* ... ... Es handelt sich um *.jpg imd *.nef Bilder KRename und GPRename habe ich versucht, aber nicht so die richtige Idee gefunden. Hat vielleicht wer einen Tip? Axel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo, Am Sun, 22 Jul 2012, Dr. A. Krebs schrieb:
habe ein kleines Problem: Habe ein paar hundert Bilder, die ich aufgrund falsch vergebener Nummerierung nachträglich neu nummerieren möchte.
Original | Umbenannt DSC_1234.* Nummer +8 DSC_1242.* DSC_1235.* DSC_1243.* DSC_1236.* DSC_1244.* ... ...
Es handelt sich um *.jpg imd *.nef Bilder
KRename und GPRename habe ich versucht, aber nicht so die richtige Idee gefunden.
Hat vielleicht wer einen Tip?
UNGESTEST! Entschärfte Version: for i in $(seq 1236 -1 1234); do n=$(printf '%04i' "$i") mmv -n "DSC_${n}.*" "DSC_$(( n + 8 )).#1" done "Rückwärts" weil es sonst bei mehr als 8 Bildern zu Kollisionen kommt, printf, falls auch Nummern kleiner 1000 vorkommen, mmv damit man die Endung ignorieren kann und ggfs. sowohl jpg, jpeg, JPG, JPEG, als auch nef/NEF umbenannt werden. Wenn die Ausgabe ok ausschaut, dann nimm das '-n' nach mmv weg oder ersetze es durch '-v' um eine Ausgabe bei jeder Umbennenung zu bekommen. -dnh -- A tangled cable is a happy cable. -- R. B. West -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo Axel. On Sunday, 22.July.2012 23:42:58 Dr. A. Krebs wrote:
Hat vielleicht wer einen Tip?
Mal ohne grossen Kommentar (the best documentation is the source): #!/bin/bash declare -i OFFS=8 ls -1r DSC_*.jpg DSC_*.nef | while read file do num=${file#DSC_} ext=${file#*.} num=${num%.*} #echo -e "$file\t$num\t$ext" ((num += OFFS)) # Wenn die Anzeige des mv-Kommandos passt # das echo ausbauen. # Und immer vorher ein Backup machen! echo mv "$file" $(printf 'DSC_%04u.%s' "$num" "$ext") done Roman -- Roman Fietze Telemotive AG Buero Muehlhausen Breitwiesen 73347 Muehlhausen Tel.: +49(0)7335/18493-45 http://www.telemotive.de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am 22.07.2012 23:42, schrieb Dr. A. Krebs:
Hallo Liste,
habe ein kleines Problem: Habe ein paar hundert Bilder, die ich aufgrund falsch vergebener Nummerierung nachträglich neu nummerieren möchte.
Original | Umbenannt --------------------------------- DSC_1234.* Nummer +8 DSC_1242.* DSC_1235.* DSC_1243.* DSC_1236.* DSC_1244.* ... ...
Es handelt sich um *.jpg imd *.nef Bilder
KRename und GPRename habe ich versucht, aber nicht so die richtige Idee gefunden.
Hat vielleicht wer einen Tip?
Axel Hallo Axel,
für die Umbenennung gab es ohnehin schon 2 gute Antworten. Ich hatte früher oft dieses Problem. Dann habe ich mir angewöhnt, den Bilddateien grundsätzlich das Aufnahmedatum als Dateinahme zu geben. Und dafür gibt es tolle Werkzeuge. Z.B. das Prgramm "jhead" Du hast in einem Verzeichnis hunderte *.jpg. Dann startest Du "jhead -n%Y%m%d-%H%M%S *.jpg" und schon sind sie umbenannt. und haben den Zeitstempel der Aufnahme als Dateiname. Sollten wirklich einmal 2 Bilder da sein die bis auf die Sekunde genau zur selben Zeit aufgenommen wurden, dann hängt das Programm auch noch ein "a,b,c..." an. Clever und sehr Praktisch. Meine 2 cent. Norbert -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (4)
-
David Haller
-
Dr. A. Krebs
-
Norbert Zawodsky
-
Roman Fietze