Mac Shell Script: Mehrere Dateien umbenennen
Heute mal etwas Futter für die Terminal-Geeks unter den Mac Usern. Es gibt zahlreiche Programme mit denen man mehrere Dateien gleichzeitig umbennen kann, aber eigentlich geht das ganze viel schneller und ohne zusätzliche Software auf der Kommandozeile im Terminal.
Alles was wir dazu auf der Bash brauchen ist eine for-Schleife:
for var in
Jetzt kann man
Jetzt brauchen wir nur noch ein Kommando um einen bestimmten Text in den Dateinamen zu ersetzen:
${var/alt/neu}
Nehmen wir an ich habe eine Menge Bilder in einem Verzeichnis, die alle nach folgendem Muster benannt sind: Bild0001.jpg; Bild0002.jpg; … und ich möchte “Bild” ersetzen durch “Urlaub-Italien-2007-”, dann kann ich das ganz einfach mit folgendem Kommando:
for d in Bild*.jpg; do mv $d ${d/Bild/Urlaub-Italien-2007-};done
So schnell kann man massenhaft Dateien umbenennen.
3 Kommentare – Kommentieren oder Pingen
Martin
Kann man auch reguläre Ausdrücke anstelle von “Bild” einsetzen?
Wenn die Bilder noch keine hochzählende Nummer im Dateinamen haben, kann man das dann mit einer Schleife erzeugen?
mfG
7.11.2008
Christoph
@Martin
Wenn man reguläre Ausdrücke verwenden möchte, verwendet man am besten die Befehle sed oder rename
Für eine hochzählende Nummer reicht ein Counter im Script,
also z.B.:
i=0;for d in Bild*.jpg; do mv $d ${d/Bild/Bild_$i};let i++;done
Wenn man diese Kommandos öfter benötigt kann man mal einen Blick auf Name Mangler werfen. Da kann man reguläre Ausdrücke verwenden, Counter usw.
siehe dazu:
http://www.quarkstar.at/index.php/2008/03/17/dateien-umbenennen-mit-dem-mac-name-mangler/
9.11.2008
“Mac Shell Script: Mehrere Dateien umbenennen”