Erweiterte Verwendungsbeispiele für den Befehl mv in Linux

Erweiterte Verwendungsbeispiele für den Befehl mv in Linux

Vorwort

Der Befehl mv ist die Abkürzung für move und kann zum Verschieben von Dateien oder zum Umbenennen von Dateien (move (rename) files) verwendet werden. Es ist ein häufig verwendeter Befehl in Linux-Systemen und wird oft zum Sichern von Dateien oder Verzeichnissen verwendet.

Befehlsformat:

mv [Optionen] Quelldatei oder -verzeichnis Zieldatei oder -verzeichnis

mv ist auch ein sehr häufig verwendeter Befehl in Linux, aber welche erweiterten Verwendungsmöglichkeiten kennen Sie außer einigen grundlegenden noch?

1. Grundlegende Verwendung

  • Verschieben Sie eine oder mehrere Dateien.
  • Verschieben Sie ein oder mehrere Verzeichnisse.
  • Benennen Sie eine Datei/ein Verzeichnis um.

Dabei handelt es sich um sehr grundlegende Verwendungszwecke, auf die nicht näher eingegangen werden muss. Hier sind einige fortgeschrittenere Verwendungsmöglichkeiten.

2. Informationen zum Druckvorgang

Wenn wir nur eine oder zwei oder wenige Dateien/Verzeichnisse verschieben, können wir trotzdem zum Zielspeicherort gehen, um zu überprüfen, ob die Dateien erfolgreich verschoben wurden. Was aber, wenn es Tausende von Dateien sind? Wie können wir wissen, ob unsere Operation erfolgreich war, ohne zum Zielort zu gehen und dies zu überprüfen? Wir können die Option -v hinzufügen.

[alvin@VM_0_16_centos mv_test]$ mv -v *.txt /home/alvin/test/mv_test/des/
'file1.txt' -> '/home/alvin/test/mv_test/des/file1.txt'
'file2.txt' -> '/home/alvin/test/mv_test/des/file2.txt'
'file3.txt' -> '/home/alvin/test/mv_test/des/file3.txt'
'file4.txt' -> '/home/alvin/test/mv_test/des/file4.txt'
'file5.txt' -> '/home/alvin/test/mv_test/des/file5.txt'

Selbstverständlich gilt diese Methode auch für mobile Verzeichnisse.

3. Verwenden Sie den interaktiven Modus

Standardmäßig erfolgt keine Eingabeaufforderung, wenn wir Dateien/Verzeichnisse verschieben. Wenn wir am Zielspeicherort eine Datei/ein Verzeichnis mit demselben Namen haben, wird der mv-Befehl nicht dazu auffordern und die Originaldatei direkt ersetzen. Solche Operationen können manchmal katastrophale Folgen haben.

In diesem Fall können wir eine Option -i hinzufügen, die eine Abfrage ausgibt, wenn sich am Zielspeicherort eine Datei mit demselben Namen befindet. Wenn Sie die Zieldatei wirklich überschreiben möchten, geben Sie „y“ ein.

[alvin@VM_0_16_centos mv_test]$ mv -i file1.txt /home/alvin/test/mv_test/des/
mv: '/home/alvin/test/mv_test/des/file1.txt' überschreiben? y

4. Überschreiben Sie keine Dateien mit demselben Namen

Wenn sich am Zielspeicherort eine Datei mit demselben Namen befindet und wir nicht möchten, dass diese überschrieben wird, können wir die Option -n hinzufügen.

[alvin@VM_0_16_centos mv_test]$ ll *.txt des/*.txt
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:26 file2.txt
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:35 file3.txt
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:26 des/file1.txt
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:27 des/file2.txt
[alvin@VM_0_16_centos mv_test]$ mv -nv *.txt /home/alvin/test/mv_test/des/
'file3.txt' -> '/home/alvin/test/mv_test/des/file3.txt' #Der Zielspeicherort hat keine Datei file3.txt, daher wurde sie erfolgreich verschoben [alvin@VM_0_16_centos mv_test]$ ls
des file2.txt

5. Verwenden Sie die Update-Option

Wenn sich am Zielspeicherort eine Datei/ein Verzeichnis mit demselben Namen befindet, möchten wir die Quelldatei nur überschreiben, wenn der Zeitstempel neuer ist als der der Zieldatei, andernfalls wird sie nicht ausgeführt. In diesem Fall können wir die Option -u verwenden.

[alvin@VM_0_16_centos mv_test]$ ll *.txt des/*.txt
-rw-rw-r-- 1 alvin alvin 0 Feb 8 17:26 file1.txt #Die Quelldatei hat einen neueren Zeitstempel als die Zieldatei -rw-rw-r-- 1 alvin alvin 0 Feb 8 17:26 file2.txt #Die Quelldatei hat einen älteren Zeitstempel als die Zieldatei -rw-rw-r-- 1 alvin alvin 0 Feb 8 16:53 des/file1.txt
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:27 des/file2.txt
[alvin@VM_0_16_centos mv_test]$ mv -uv *.txt /home/alvin/test/mv_test/des/
'file1.txt' -> '/home/alvin/test/mv_test/des/file1.txt' #Nur Dateien mit aktualisierten Zeitstempeln werden ersetzt [alvin@VM_0_16_centos mv_test]$ ls
des file2.txt

6. Erstellen Sie vor dem Überschreiben ein Backup

Am Zielort existiert bereits eine Datei mit gleichem Namen. Wenn ich diese einfach überschreibe, ist mir das schon ein wenig unangenehm. Was, wenn die aktuelle Entscheidung falsch ist? Ist es möglich, die Zieldatei vor dem Überschreiben zu sichern? Die Antwort ist ja, fügen Sie einfach eine Option -b hinzu.

[alvin@VM_0_16_centos mv_test]$ mv -bv *.txt /home/alvin/test/mv_test/des/
„file1.txt“ -> „/home/alvin/test/mv_test/des/file1.txt“ (Sicherung: „/home/alvin/test/mv_test/des/file1.txt~“)
„file2.txt“ -> „/home/alvin/test/mv_test/des/file2.txt“ (Sicherung: „/home/alvin/test/mv_test/des/file2.txt~“)
[alvin@VM_0_16_centos mv_test]$ ll des/
gesamt 0
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:41 file1.txt
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:26 file1.txt~
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:26 file2.txt
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:27 file2.txt~
-rw-rw-r-- 1 alvin alvin 0 8. Feb. 17:35 file3.txt

Es ist ersichtlich, dass die Zieldatei vor dem Überschreiben als Datei mit einer Tilde ~ gesichert wird. Gleichzeitig werden aufmerksame Leser auch feststellen, dass sich der Zeitstempel der überschriebenen Datei von dem der Sicherungsdatei unterscheidet.

Oben sind einige fortgeschrittenere Verwendungen des Befehls mv aufgeführt. Wenn Sie sie flexibel verwenden, verbessern Sie Ihre Arbeitseffizienz und hinterlassen vor Ihren Kollegen einen besseren Eindruck.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Erweiterte Linux-Systembefehle (empfohlen)
  • Detaillierte Erklärung des Befehls zum Verlassen des Bearbeitungsmodus in Linux
  • Befehl zum Anzeigen der Erstellungszeit der Binlog-Datei unter Linux
  • Zusammenfassung der bei der Arbeit häufig verwendeten Linux-Befehle
  • Detaillierte Erklärung des mkdir-Befehls in Linux
  • Zusammenfassung der Linux-Befehlsmethoden zum Anzeigen verwendeter Befehle

<<:  JavaScript verwendet Canvas zum Zeichnen von Koordinaten und Linien

>>:  Lernen Sie MySQL-Datenbanken in einer Stunde (Zhang Guo)

Artikel empfehlen

Wissen Sie, wie Sie mit Vue Screenshots von Webseiten erstellen?

Inhaltsverzeichnis 1. Installieren Sie html2Canva...

Benutzerdefinierte Docker-Netzwerkimplementierung

Inhaltsverzeichnis 1. Passen Sie das Netzwerk an,...

Praktische Methode zum Löschen einer Zeile in einer MySql-Tabelle

Zunächst müssen Sie bestimmen, welche Felder oder...

Detaillierte Erklärung des Unterschieds zwischen Flex und Inline-Flex in CSS

inline-flex ist dasselbe wie inline-block. Es ist...

JavaScript zum Anzeigen versteckten Formulartexts

Dieser Artikel gibt Ihnen den spezifischen JavaSc...

LinkedIn wird überarbeitet, um das Surfen auf der Website zu vereinfachen

Das geschäftliche Social-Networking-Portal Linked...

Implementieren von Rechnerfunktionen mit dem WeChat-Applet

Dieser Artikel ist ein einfacher Rechner, der mit...

React implementiert Endlosschleifen-Scrollinformationen

In diesem Artikel wird der spezifische Code von R...

Tipps zur MySQL-Leistungsoptimierung

MySQL-Leistungsoptimierung MySQL wird in Internet...

CSS3 erstellt eine Webanimation, um einen springenden Balleffekt zu erzielen

Grundlegende Vorbereitung Für diese Implementieru...

Native JavaScript-Karussell-Implementierungsmethode

In diesem Artikel wird die Implementierungsmethod...