Der mv
Befehl
Er steht für "verschieben" und genau das tut er: Er verschiebt Dateien und Verzeichnisse von einem Ort zum anderen im Dateisystem. Aber mv
ist nicht nur dazu da, Dateien zu verschieben; es wird auch verwendet, um sie umzubenennen.
Einführung in mv
Bevor wir in die Mechanismen des mv
Befehls eintauchen, sollten wir verstehen, warum er ein Grundnahrungsmittel im Werkzeugkasten des Linux-Benutzers ist. Das Dateisystem unter Linux ist eine hierarchische Struktur und das Organisieren von Dateien und Verzeichnissen ist eine häufige Aufgabe. Der mv
Befehl ist das Hauptwerkzeug für diesen Job. Er ist einfach, leistungsstark und kann, wenn er mit Sorgfalt verwendet wird, viel Zeit sparen.
Grundlegende Syntax
Die grundlegende Syntax des mv
Befehls lautet wie folgt:
mv [Optionen] Quelle Ziel
Hierbei ist Quelle
die Datei oder das Verzeichnis, das Sie verschieben oder umbenennen möchten, und Ziel
ist der Zielort oder der neue Name für die Datei/das Verzeichnis.
Verschieben von Dateien
Um eine Datei zu verschieben, geben Sie den aktuellen Speicherort der Datei als Quelle und den neuen Speicherort als Ziel an. Um beispielsweise eine Datei namens file1.txt
aus dem aktuellen Verzeichnis in /home/benutzer/dokumente
zu verschieben, würden Sie verwenden:
mv file1.txt /home/benutzer/dokumente/
Nach Ausführung dieses Befehls wird file1.txt
nicht mehr im aktuellen Verzeichnis existieren; sie wird sich in /home/benutzer/dokumente
befinden.
Umbenennen von Dateien
Das Umbenennen einer Datei ist im Wesentlichen das Verschieben derselben an denselben Ort mit einem anderen Namen. Um file1.txt
in newfile.txt
innerhalb desselben Verzeichnisses umzubenennen, würden Sie verwenden:
mv file1.txt newfile.txt
Verschieben von Verzeichnissen
Das Verschieben von Verzeichnissen funktioniert ähnlich wie das Verschieben von Dateien. Um ein Verzeichnis namens my_directory
in /home/benutzer/
zu verschieben, würden Sie verwenden:
mv my_directory /home/benutzer/
Überschreiben von Dateien
Standardmäßig überschreibt mv
, wenn eine Datei mit demselben Namen am Zielort existiert, diese ohne Warnung. Um versehentliches Überschreiben zu vermeiden, ist es eine gute Praxis, die Option -i
(interaktiv) zu verwenden, die Sie zur Bestätigung auffordert, bevor überschrieben wird:
mv -i Quelle Ziel
Ausführliche Ausgabe
Die Option -v
(verbose) lässt mv
ausgeben, was es tut, was hilfreich sein kann, um Aktionen zu bestätigen:
mv -v Quelle Ziel
Fortgeschrittene Verwendungsbeispiele
Verschieben mehrerer Dateien
Sie können mehrere Dateien auf einmal verschieben, indem Sie diese vor dem Ziel auflisten:
mv file1.txt file2.txt file3.txt /home/benutzer/dokumente/
Verwendung von Wildcards
Wildcards können verwendet werden, um eine Gruppe von Dateien zu verschieben, die einem Muster entsprechen:
mv *.txt /home/benutzer/dokumente/ # Verschiebt alle .txt Dateien im aktuellen Verzeichnis nach /home/benutzer/dokumente/
Erhalten von Attributen
Die Option -p
bewahrt die Dateiattribute wie Zeitstempel und Zugriffssteuerungslisten:
mv -p Quelle Ziel
Verschieben von Dateien in ein Verzeichnis mit demselben Namen
Wenn das Zielverzeichnis denselben Namen wie die Quelldatei hat, müssen Sie sicherstellen, dass das Ziel mit einem Schrägstrich endet, um das Überschreiben des Verzeichnisses zu vermeiden:
mv file1.txt /home/benutzer/file1.txt/ # Dies verschiebt file1.txt in das Verzeichnis /home/benutzer/file1.txt
Worauf man achten sollte
- Groß-/Kleinschreibung: Linux-Dateisysteme unterscheiden zwischen Groß- und Kleinschreibung. Seien Sie vorsichtig mit Datei- und Verzeichnisnamen;
File1.txt
undfile1.txt
gelten als unterschiedliche Dateien. - Überschreiben: Verwenden Sie immer die Optionen
-i
oder-n
(keine Überschreibung), um versehentliches Überschreiben von Dateien zu verhindern. - Berechtigungen: Stellen Sie sicher, dass Sie die erforderlichen Berechtigungen zum Verschieben von Dateien haben, insbesondere wenn Sie als Benutzer ohne Root-Rechte arbeiten.
- Gleiches Dateisystem: Das Verschieben von Dateien innerhalb desselben Dateisystems ist nahezu sofortig, da dies nur das Aktualisieren der Metadaten des Dateisystems beinhaltet. Das Verschieben von Dateien über verschiedene Dateisysteme hinweg (z. B. zwischen zwei Festplatten) kopiert jedoch tatsächlich die Daten und löscht dann die Quelle, was mehr Zeit in Anspruch nimmt.
Ausgaben:
Hier ist das, was Sie sehen könnten, wenn Sie mv
mit verschiedenen Optionen verwenden:
# Verschieben einer Datei mit ausführlicher Ausgabe
$ mv -v file1.txt /home/benutzer/dokumente/
'file1.txt' -> '/home/benutzer/dokumente/file1.txt'
# Umbenennen einer Datei mit interaktiver Bestätigung
$ mv -i file1.txt newfile.txt
mv: 'newfile.txt' überschreiben? y
Denken Sie daran, die Optionen -i
oder -n
zu verwenden, um Datenverlust zu verhindern, und verwenden Sie -v
für ausführliche Ausgaben, um Ihre Aktionen im Auge zu behalten. Mit der Zeit wird mv
zur zweiten Natur, und Sie werden Ihr Linux-System mit der Geschicklichkeit eines Profis navigieren.