PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bildnamen umbenennen Stapelverarbeitung



SchusterHannes
07.11.14, 16:30
Hallo,

ich bzw. wir stehen vor folögender Aufgabe... wir müssen ca. 10.000 Bildnamen so umbenennen, dass diese vom Onlineshopsystem beim Import richtig verarbeitet werden müssen.

Die Ausgangsdateien sehen so aus:

014700-1001.jpg
014700-1011.jpg
014700-1021.jpg

... bei anderen wiederum so:

015300-300.jpg
015300-301.jpg

Ich möchte diese dann einheitlich so ähnlich haben. Als erstes ist die Artikelnummer und nach dem "-" dann die 1 für Bild 1 und 2 für Bild 2.

also so:
014700-1.jpg
014700-2.jpg
014700-3.jpg

015300-1.jpg
015300-2.jpg

Meine Idee ist es das irgendwie mit "rename" zu lösen. Also erstmal nach dem Minuszeichen des Dateinamen alles abschneiden, da dort in allen Ausgangsdateinamen keine Regelmäßigkeit festzustellen ist. Die ersten Ziffen (Artikelnummer) sind immer 6 Ziffern. Danach müssten dann die Bilder hochnummeriert werden... und da haben ich noch keine so richtige Idee.

Hat jemand eine Idee?

Vielen Dank im Voraus.

marce
07.11.14, 16:35
rename ist da eigentlich ideal dafür geeignet - die Frage ist nur, welche Version von Rename Du hast. Sprich Debian oder "was anderes".

Alternativ ein kleines Script schreiben, welches über die Liste drüber geht.

Gern auch genommen, wenn man es "lokal" macht über eines der div. Rename-Tools mit GUI, bei denen hat man teilweise noch ein paar nette Features mehr, so daß man nicht direkt scripten muss.

michel_vaclav
07.11.14, 17:57
Hallo,

mit krename geht das problemlos.
Einfach den alten Dateinamen ersetzen durch einen benutzerspezifischen mit folgender Syntax:
[$0;6]-#.
Das bedeutet: Nimm die ersten 6 Zeichen vom Originalnamen, hänge ein - dran und dann einen Zähler der bei 1 beginnend hochzählt. Wenn führende Nullen beötigt werden, einfach statt # mehrere ## verwenden.

michel_vaclav

PS.: Ich finde krename recht schnell, wie es für 10000 Files aussieht, weiß ich nicht.

SchusterHannes
07.11.14, 18:20
@marce
Ich habe Debian bzw. Ubuntu...

@michel_vaclav
das hatte ich mit krename auch schon versucht... aber ich möchte immer, dass die Bilder mit der gleichen Artikelnummer hochgezählt werden und bei der nächsten Artikelnummer wieder bei neuem anfängt.

also so...

014700-1.jpg
014700-2.jpg
014700-3.jpg
015300-1.jpg
015300-2.jpg
015300-3.jpg

usw.

michel_vaclav
07.11.14, 18:55
Das würde ich jetzt dann doch per Skript lösen.
Wenn es doch mit krename gemacht werden soll: es gäbe noch die Möglichkeit, meinen Vorschlag zu erweitern um ein Sortieren in jeweilige Unterordner. Wenn es nur wenige final sind, dann anschließend in jedem Unterordner per krename den Zähler neu setzen.
Aber das ist spätestens bei 10 Unterorndern bereits mühsam.

SchusterHannes
07.11.14, 19:11
Die Bilder waren alle in Unterordner und zwar in 4512 Unterordnern. In den Ordnern war dann zwischen 1-6 Bilder enthalten z.B. 014700-1001.jpg 014700-1011.jpg 014700-1021.jpg.

michel_vaclav
07.11.14, 20:06
Und es geht doch mit krename:

Wähle bei "1. Dateien hinzufügen" Deine 4512 Ordner. Dann hast Du alle Dateien in der Liste. Dann wählst Du unter "4. Dateiname" bei Muster meinen Vorschlag von oben aber unter dem "Fortgeschrittenen-Modus für Dateiname". Dort gibt es eine Knopf "Zähler", wo Du Startwert und Schrittweite angeben kannst (1 und 1). Und (!) ein Häkchen setzen "Zähler für jedes Verzeichnis zurücksetzen".

Dann kriegst Du in jedem Unterverzeichnis Dateien hochgezählt von 1 bis maximal 6.

Mein Vorschlag von oben liefert aber nur die ersten 5 Zeichen, also nimm lieber [$0;7]-#

SchusterHannes
08.11.14, 18:42
@michel_vaciav

Vielen Dank!!! das hat so wunderbar geklappt.