mv-Befehl unter Linux

Dateien und Ordner verschieben/umbenennen

Der Befehl mv wird in Linux zum Umbenennen und Verschieben von Dateien und Ordnern verwendet.

Wie bei anderen Befehlen kommt auch hier der Name von der Abkürzung dessen, was getan wird: move.

Syntax des Befehls

Die grundlegende Syntax lautet:

1
mv [Optionen] Quelle Ziel

Dabei ist Quelle der Name des Elements, das verschoben oder umbenannt werden soll und Ziel ist der Zielort oder der neue Name.

Ausgangszustand

Wenn du die Beispiele nachvollziehen willst: Hier ist mein Ausgangszustand.

1
2
3
4
5
6
7
sal@box:~/test$ tree
.
├── beispiel.txt
├── Dokumente
└── Projekte

3 directories, 1 file

Beispiele

Elemente verschieben

So kannst du eine Datei an einen anderen Ort bewegen:

1
mv beispiel.txt Dokumente/

Das geht genauso mit Ordnern:

1
mv Dokumente/ Projekte/

Elemente umbenennen

Zusätzlich kannst du mit mv einer Datei einen neuen Namen geben:

1
mv Projekte/Dokumente/beispiel.txt Projekte/Dokumente/hallo.txt

Oder du benennst ein Verzeichnis um:

1
mv Projekte/ projects

Verschieben und umbenennen gleichzeitig

Vielleicht ahnst du es schon: Du kannst mit mv auch umbenennen und verschieben gleichzeitig ausführen:

1
mv projects/Dokumente/hallo.txt projects/hi.txt

Ergebnis

Damit erhältst du folgendes Ergebnis:

1
2
3
4
5
6
7
sal@box:~/test$ tree
.
└── projects
    ├── Dokumente
    └── hi.txt

3 directories, 1 file

Nützliche Optionen

Aber das waren ja alles Befehle ohne Optionen. Daher schauen wir uns auch dazu noch ein paar wichtige an.

Das Flag interactive fragt, bevor mit mv eventuell ein Element überschrieben wird:

1
2
3
4
# Langform
mv --interactive hallo.txt hi.txt
# Kurzform
mv -i hallo.txt hi.txt

Die Option no-clobber führt dazu, dass ein existierendes Element nicht überschrieben wird:

1
2
3
4
# Langform
mv --no-clobber hallo.txt hi.txt
# Kurzform
mv -n hallo.txt hi.txt

Mit force kann man das Gegenteil von no-clobber erreichen:

1
2
3
4
# Langform
mv --force hallo.txt hi.txt
# Kurzform
mv -f hallo.txt hi.txt

Willst du eine Datei nur verschieben, wenn die Quelle neuer ist als die Ziel-Datei, dann nutze update:

1
2
3
4
# Langform
mv --update hallo.txt hi.txt
# Kurzform
mv -u hallo.txt hi.txt

Und wie bei vielen anderen Befehlen kann man mit verbose die geschwätzige 📣 Ausgabe bekommen:

1
2
3
4
# Langform
mv --verbose hallo.txt hi.txt
# Kurzform
mv -v hallo.txt hi.txt

Fazit

Der mv-Befehl ist ein vielseitiges Werkzeug zum Verschieben und Umbenennen von Dateien und Verzeichnissen.

Durch seine Optionen lässt sich der Befehl an unterschiedliche Bedürfnisse anpassen, was ihn zu einem wichtigen Tool in der Linux-Kommandozeile macht.

Hilfe zu mv

Mehr zu mv findest du unter man mv und tldr mv. Details zum Befehl tldr gibt es hier.

Erstellt mit Hugo
Theme Stack gestaltet von Jimmy