Dateien und Verzeichnisse in Linux umbenennen
Das Umbenennen von Dateien und Verzeichnissen ist eine häufige, aber dennoch wichtige Aufgabe in der Verwaltung von Linux-Systemen. Ob zur Organisation von Inhalten, zur Umstrukturierung eines Projekts oder zur Optimierung automatisierter Workflows – Linux stellt leistungsstarke Befehlszeilenwerkzeuge bereit, um den Vorgang zu vereinfachen.
Diese Anleitung stellt verschiedene Methoden vor, um Dateien und Verzeichnisse mithilfe der Befehle mv
und rename
umzubenennen. Außerdem wird gezeigt, wie Sie mit Shell-Schleifen Massenumbenennungen durchführen und dabei vermeiden, Dateien versehentlich zu überschreiben oder fehlerhafte Namen zu erzeugen.
Voraussetzungen
- Zugriff auf eine Linux-Umgebung als Nicht-Root-Benutzer mit
sudo
-Rechten.
Verfügbare Befehle zum Umbenennen
Linux bietet mehrere Befehlszeilenprogramme zum Umbenennen von Dateien und Verzeichnissen. Die gängigsten sind:
- mv: Benennt Dateien und Verzeichnisse um oder verschiebt sie.
- rename: Ändert mehrere Dateinamen mit Perl-kompatiblen Mustern.
- Bash-Schleifen: Automatisieren Massenumbenennungen mit individueller Logik.
Dateien in Linux umbenennen
Das Anpassen von Dateinamen trägt dazu bei, Ordnung zu halten, die Übersicht zu verbessern und konsistente Namenskonventionen im Projekt beizubehalten.
Den mv-Befehl verwenden
Syntax
mv [OPTIONEN] alter_dateiname neuer_dateiname
alter_dateiname
: Der aktuelle Name der Datei.neuer_dateiname
: Der gewünschte neue Name.-i
: Vor dem Überschreiben nachfragen.-n
: Überschreiben verhindern.
Beispiele
document.txt
in report.txt
umbenennen:
$ mv document.txt report.txt
Ergebnis prüfen:
$ ls
Vor dem Überschreiben bestätigen lassen:
$ mv -i existing.txt backup.txt
Überschreiben mit -n
verhindern:
$ mv -n existing.txt backup.txt
Dateinamen mit Leerzeichen in Anführungszeichen setzen:
$ mv "old file.txt" "new file.txt"
Den rename-Befehl verwenden
Dieses Beispiel nutzt die Perl-basierte rename
-Version, die in Debian-basierten Systemen wie Ubuntu standardmäßig vorhanden ist. In anderen Distributionen (z. B. CentOS oder Fedora) kann rename
auf einer anderen Implementierung basieren und abweichende Syntax verwenden.
$ sudo apt install rename
Syntax
rename 's/old_pattern/new_pattern/' dateien_zum_umbenennen
's/old/new/'
: Perl-Substitutionsmuster.dateien_zum_umbenennen
: Dateien, die angepasst werden sollen.
Beispiele
Alle .txt
-Dateien in .md
umbenennen:
$ rename 's/\.txt$/\.md/' *.txt
Alle Dateinamen in Kleinbuchstaben umwandeln:
$ rename 'y/A-Z/a-z/' *
Änderungen vorab mit -n
prüfen:
$ rename -n 's/\.txt$/.md/' *.txt
Oder per Schleife simulieren:
$ for f in *.txt; do echo mv "$f" "${f%.txt}.md"; done
Bash-Schleifen verwenden
Syntax
for f in *.txt; do mv -- "$f" "${f%.txt}.pdf"; done
Beispiel
Alle .txt
-Dateien in .pdf
umbenennen:
$ for f in *.txt; do mv -- "$f" "${f%.txt}.pdf"; done
Überschreiben vermeiden:
$ for f in *.txt; do mv -n -- "$f" "${f%.txt}.pdf"; done
Verzeichnisse in Linux umbenennen
Den mv-Befehl verwenden
Syntax
mv [OPTIONEN] altes_verzeichnis neues_verzeichnis
Beispiel
projects
in work
umbenennen:
$ mv projects work
Mit -T
überschreiben:
$ mv -T projects work
Den rename-Befehl verwenden
Syntax
rename 's/old/new/' */
Beispiel
„old“ durch „new“ in allen Verzeichnisnamen ersetzen:
$ rename 's/old/new/' */
Massenumbenennung von Verzeichnissen mit Schleifen
Syntax
for dir in */; do mv "$dir" "${dir%/}_backup"; done
Beispiel
_backup
an alle Verzeichnisnamen anhängen:
$ for dir in */; do mv "$dir" "${dir%/}_backup"; done
Änderungen vorab mit echo
anzeigen:
$ for dir in */; do echo mv "$dir" "${dir%/}_backup"; done
Fazit
Diese Anleitung hat gezeigt, wie Sie Dateien und Verzeichnisse in Linux mit mv
, rename
und Bash-Schleifen umbenennen können. Mit diesen Werkzeugen halten Sie Ihr Dateisystem übersichtlich, vermeiden Namenskonflikte und automatisieren wiederkehrende Aufgaben. Für weitere Informationen finden Sie detaillierte Beschreibungen in den offiziellen Handbuchseiten zu mv
und rename
.