VIM: Bulk Rename - Mehrere Dateien auf einmal umbenennen (MacOS, Linux, Unix)
Einleitung
Mehrere Dateien am Stück umzubenennen ist ein häufiger Anwendungsfall, wenn du zum Beispiel aus einer Liste von Dateien eine Zeichenkette im Dateinamen entfernen oder aber hinzufügen möchtest. Ein Beispiel wäre das Hinzufügen einer Dateiendung an mehrere Dateien. Eine einfache Möglichkeit bietet hierfür der verbreitete Text Editor VIM.
Umbenennen der Dateien
Erstelle eine Textdatei mit einer Liste der betroffenen Dateien
In der SHELL deiner Wahl sendest du eine Liste der Dateien an VIM
\ls | vim -
Füge jeder Zeile den benötigten Befehl hinzu
Beispiel des Hinzufügens der Dateiendung
Möchtest du mehreren Dateien gleichzeitig eine Dateiendung (hier .extension) hinzufügen, lässt sich folgender Befehl nutzen:
:%s/.*/mv -i '&' '&.extension'/g
Beispiel: Entferne die Zeichenkette “str” aus allen Dateien
:%s/.*/\="mv -i ".submatch(0)." ".substitute(submatch(0), "str", "", "g")/g
Führe die Befehle hintereinander aus
:w !sh
oder alternativ
%!sh
wenn du die Ausgabe des Befehls direkt in VIM sehen möchtest.