Kommandozeile Schnellstart – mv Move
Übersicht:
Willkommen zur Lektion zum Thema mv - move.
Das Bewegen von Dateien ist im Grunde eine Variation des Kopierens. Im Gegensatz zum Kopieren bleibt aber die originale Datei nicht enthalten.
Hintergrundwissen:
Wird eine Datei unter einem unixoiden System an eine andere Stelle bewegt, ändert werden in Wirklichkeit nicht Bits und Bytes auf der Festplatte bzw. SSD hin- und her geschaufelt. In Wirklichkeit wird lediglich die sogenannte inode
des beinhaltenden Ordners geupdatet. Die inode ist die Seriennummer der Datei. Durch Verweise im Dateisystem und in der Ordnerstruktur lässt sich so der Speicherort der Datei bestimmen. Daher ist es unter Linux sehr schnell, auch große Dateien von einem Ort zu einem anderen zu bewegen, solange es innerhalb einer Festplatte passiert. Schließlich müssen nicht sämtliche Bits und Bytes von einem geändert, sondern lediglich einige Verweise angepasst werden.
Anwendung und Syntax:
Wie der Name von mv schon vermuten lässt, nutzt man mv um Dateien zu verschieben. Die grundsätzliche Syntax von mv ist dabei sehr einfach:
mv <Quelle> <Ziel>
Mit mv kann man dabei Datein, Ordner und symbolische Links von einem Ort zu einem anderen verschieben. Will man eine Datei lediglich umbenennen, nutzt man ein mv-Kommando innerhalb des gleichen Verzeichnisses:
mv test.txt test2.txt
Dieser Befehl verschiebt Datei test.txt im aktuellen Ordner in eine neue Datei namens test2.txt im selben Ordner. Dieser Vorgang entspricht also praktisch dem Umbennenen.
mv test.txt ../test.txt
Dieser Befehl verschiebt die Datei test.txt im aktuellen Ordner in eine neue Datei namens test.txt im übergeordneten Ordner.
mv subdir1 subdir2
Dieser Befehl verschiebt den Ordner subdir1 in den Ordner subdir2.
Parameter
Der mv-Befehl hat eine sehr große Anzahl an Parametern, die einem das Leben erleichtern können. Eine vollständige Aufstellung dieser Parameter findest du in der man-page. Wir wollen an dieser Stelle nur die wichtigsten vorstellen:
-b:
Der Parameter b steht dabei für backup. Hierbei wird für jedes beim Bewegen zu überschreibende File ein backup angelegt.
-i:
Der Parameter i steht für interaktiv. Hierbei wird für jedes zu überschreibende File eine Benutzerabfrage durchgeführt.
-n
: Der Parameter n steht für "no clobber". Hierbei werden unter keinen Umständen Dateien im Zielverzeichnis überschrieben.
Übungen:
- Benenne die Datei test.txt in eine Datei namens test2.txt um:
mv test.txt test2.txt
- Bewege die Datei test2.txt in den Unterordner subdir und benenne sie Dabei in test3.txt um:
mv test2.txt subdir/test3.txt
- Bennen den Unterordner subdir in einen Unterordner namens subdir2 um:
mv subdir subdir2
Zusammenfassung:
Der Befehl mv bzw. move ist eine weiter wichtiger Befehl auf der Kommandozeile. Mit ihm können Dateien und Verzeichnisse an beliebige Stellen im Dateisystem bewegt werden. Zudem wird mv auch für das Umbenennen von Dateien genutzt.