Folgendes Aufgabe
Ich habe mit meiner Camera eine Reihe von Bildern gemacht und habe diese auf die Festplatte überspielt. Ich möchte diese Bilder nunmehr nach Inhalten umbenennen. Ich möchte aber bei 50 Dateien nicht jede einzelne umbenennen sondern würde das gerne so machen, daß ich z.b. die Dateien in der Form Bild001-Bild050 mit einem "Einzeiler" in der bash umbenannt werden.
Folgende Vorschläge habe ich schon mal erarbeitet, bekomme sie aber nicht richtig zusammen.
1. mit find die Dateien einlesen
2. eine Variable sezten $var
3. mit mv umbenennen wobei mit '...' eine Befehlssubstitution gemacht wird. Da sollte dann die $var rein.
4. irgendwie sollte jetzt selbst hochgezählt werden.
So ungefähr dachte ich könnte das gehen ABER ich kann es leider nicht.
Ich hätte eine Variante als script aber genau das will ich ja nicht.
CODE
#!/bin/sh
count=1
find . -type f | while read filename
do
mv "${filename}" "Bild_$(printf %03d ${count}).png"
count=$((count+1))
done
ENDE CODE
nicht sehr elegant und mit einigen Schwächen aber als Ausgangspunkt für einen Einzeiler vielleicht brauchbar.
Für Hilfe wäre ich dankbar
stemic
Ich habe mit meiner Camera eine Reihe von Bildern gemacht und habe diese auf die Festplatte überspielt. Ich möchte diese Bilder nunmehr nach Inhalten umbenennen. Ich möchte aber bei 50 Dateien nicht jede einzelne umbenennen sondern würde das gerne so machen, daß ich z.b. die Dateien in der Form Bild001-Bild050 mit einem "Einzeiler" in der bash umbenannt werden.
Folgende Vorschläge habe ich schon mal erarbeitet, bekomme sie aber nicht richtig zusammen.
1. mit find die Dateien einlesen
2. eine Variable sezten $var
3. mit mv umbenennen wobei mit '...' eine Befehlssubstitution gemacht wird. Da sollte dann die $var rein.
4. irgendwie sollte jetzt selbst hochgezählt werden.
So ungefähr dachte ich könnte das gehen ABER ich kann es leider nicht.
Ich hätte eine Variante als script aber genau das will ich ja nicht.
CODE
#!/bin/sh
count=1
find . -type f | while read filename
do
mv "${filename}" "Bild_$(printf %03d ${count}).png"
count=$((count+1))
done
ENDE CODE
nicht sehr elegant und mit einigen Schwächen aber als Ausgangspunkt für einen Einzeiler vielleicht brauchbar.
Für Hilfe wäre ich dankbar
stemic