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

Richtiger Einsatz von MySQL-Partitionstabellen

Übersicht über partitionierte MySQL-Tabellen Wir ...

Tutorial zur Installation der Dekomprimierungsversion von MySQL 8.0.12

In diesem Artikel finden Sie das Installations-Tu...

Detaillierte Erläuterung der Angular-Routing-Grundlagen

Inhaltsverzeichnis 1. Routing-bezogene Objekte 2....

Erste Erkundung gängiger Befehle für Docker-Anfänger

Bevor wir Docker offiziell verwenden, machen wir ...

Lösen Sie das Matching-Problem in CSS

Problembeschreibung Wie wir alle wissen, wird bei...

Docker nginx Beispielmethode zum Bereitstellen mehrerer Projekte

Voraussetzungen 1. Docker wurde auf dem lokalen C...

mysql5.7.18 dekomprimierte Version zum Starten des MySQL-Dienstes

Die dekomprimierte Version von mysql5.7.18 starte...

Detaillierte Erklärung der neuen CSS-Eigenschaft display:box

1. Anzeige:Box; Wenn Sie diese Eigenschaft für ei...

So ändern Sie den Hostnamen in Linux dauerhaft

Wenn Sie Ihren Hostnamen ändern möchten, können S...

Lokale Vue-Komponentendatenfreigabe Vue.observable()-Nutzung

Wenn Komponenten detaillierter werden, treten Sit...