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

Detaillierte Erklärung zur Verwendung von MySQL, wobei

Inhaltsverzeichnis 1. Einleitung 2. Haupttext 2.1...

So richten Sie Windows Server 2019 ein (mit Bildern und Text)

1. Installation von Windows Server 2019 Installie...

Erstellen Sie mit Node.JS ein Echtzeit-Warnsystem für Unwetter

Inhaltsverzeichnis Vorwort: Schritt 1: Finden Sie...

So installieren Sie den Xrdp-Server (Remote Desktop) unter Ubuntu 20.04

Xrdp ist eine Open-Source-Implementierung des Rem...

Fallstricke und Lösungen für das Upgrade von MySQL 5.7.23 in CentOS 7

Vorwort Kürzlich bin ich beim Upgrade von MySQL 5...

Tutorial zur Installation von Pycharm und Ipython unter Ubuntu 16.04/18.04

Unter Ubuntu 18.04 1. sudo apt install python ins...

Detailliertes Tutorial zum Bereitstellen eines Django-Projekts unter CentOS

Grundlegende Umgebung Pagoden-Montageservice [Pyt...

Vue3 (Teil 2) Integration von Ant Design Vue

Inhaltsverzeichnis 1. Integrieren Sie Ant Design ...

IE6-Verzerrungsproblem

Frage: <input type="hidden" name=&qu...

Docker stellt MySQL bereit, um Beispielcode für eine Remoteverbindung zu erreichen

1. Docker durchsucht MySQL查看mysql版本 2. Docker Pul...