Eine der grundlegendsten Aufgaben, die Benutzer unter Linux ausführen, ist das Umbenennen von Dateien . Sie können Dateien in Linux mit einem Dateimanager umbenennen, aber es ist nicht sehr interessant. In diesem Artikel erfahren Sie, wie Sie eine Datei oder mehrere Dateien in Linux über das Terminal umbenennen.
Benennen Sie eine Datei in Linux um oder verschieben Sie Dateien
Ich habe eine Datei namens „file“ in meinem Verzeichnis, und ich werde ihren Namen in „archivo“ ändern, indem ich den Befehl „mv“ verwende:
Der Befehl „mv“ wird verwendet, um die Dateien zu verschieben, aber Sie können eine Datei unter einem anderen Namen an denselben Ort verschieben.
$ mv file new_name
Sie können eine Datei auch an einen anderen Speicherort und unter einem anderen Namen verschieben.
Außerdem können Sie Verzeichnisse mit derselben Syntax umbenennen.
Sie können eine ausführliche Ausgabe mit der Option „v“ erhalten.
Wenn Sie eine Datei unter Verwendung des Namens einer vorhandenen Datei umbenennen, überschreibt der Befehl „mv“ die vorhandene Datei, aber wenn Sie dies nicht möchten, übergeben Sie einfach die Option „i“, und es wird eine Aufforderung angezeigt, bevor die Datei überschrieben wird.
Wenn Sie die Option „i“ nicht verwenden möchten, sollten Sie eine Sicherungskopie der vorhandenen Datei erstellen.
Die Sicherung heißt Datei1~
Sie können dem Sicherungsnamen ein Suffix hinzufügen, geben Sie einfach die folgende Syntax ein.
$ mv -b -S “suffix” file_name existing_file_name
Optionsliste
–Sicherung | Erstellen Sie eine Sicherungskopie jeder vorhandenen Zieldatei |
-f –force | Vor dem Überschreiben nicht nachfragen |
-i –interaktiv | Vor dem Überschreiben nachfragen |
-n | keine vorhandene Datei überschreiben |
-u | nur verschieben, wenn die SOURCE-Datei neuer als die Zieldatei ist oder wenn die Zieldatei fehlt |
–Sicherungsoptionen
keine, aus | mach niemals Backups (selbst wenn –backup angegeben ist) |
nummeriert, t | nummerierte Sicherungen erstellen |
vorhanden, null | nummeriert, falls nummerierte Backups existieren, sonst einfach |
einfach, nie | immer einfache Backups erstellen |
Wenn Sie detailliertere Informationen zu „mv“ erhalten möchten, geben Sie einfach Folgendes ein:$ man mv an Ihrem Terminal.
Benennen Sie mehrere Dateien in Linux mit „rename“ um
Zusammenfassung umbenennen [ -h|-m|-V ] [ -v ] [ -n ] [ -f ] [ -e|-E perlexpr]*|perlexpr [ Dateien ]
Dieser Befehl ist etwas fortgeschrittener als mv, da er die Kenntnis oder zumindest eine grundlegende Vertrautheit mit regulären Ausdrücken erfordert. „umbenennen“ benennt die Dateinamen (mehrere Dateien) um, die gemäß der als erstes Argument angegebenen Regel angegeben werden.
Das perlexpr-Argument ist ein Perl-Ausdruck, von dem erwartet wird, dass er den $_-String in Perl für mindestens einige der angegebenen Dateinamen modifiziert. Wenn ein gegebener Dateiname nicht durch den Ausdruck geändert wird, wird er nicht umbenannt. Wenn auf der Kommandozeile keine Dateinamen angegeben werden, werden die Dateinamen über die Standardeingabe gelesen.
Optionen
-v -verbose | Ausführlich:Namen der erfolgreich umbenannten Dateien ausgeben. |
-n -nono | Keine Aktion:Namen der umzubenennenden Dateien ausgeben, aber nicht umbenennen. |
-f -force | Überschreiben:Überschreiben vorhandener Dateien zulassen. |
-h -help | Hilfe:ZUSAMMENFASSUNG und OPTIONEN drucken. |
-V -Version | Version:Versionsnummer anzeigen. |
-e | Ausdruck:Code, der auf den Dateinamen wirkt. Kann wiederholt werden, um Code aufzubauen (wie „perl -e“). Wenn kein -e, wird das erste Argument als Code verwendet. |
-E | Anweisung:Code, der auf den Dateinamen einwirkt, als -e, aber mit „;“ abgeschlossen. |
Beispiele:
Ich habe zwei Dateien:file1.c und file2.c, und ich möchte die Erweiterung von file1 in .txt ändern, also werde ich den folgenden Befehl verwenden:
$ rename 's/\.c/\.txt/' file1.c
Ich habe eine neue Datei namens file3.c erstellt und möchte die Erweiterung der Dateien 2 und 3 ändern, also verwende ich den folgenden Befehl:
$ rename 's/\.c/\.txt/' *
Jetzt habe ich vier Dateien:awesomefile, greatfile, bigfile, linuxfile; und ich möchte einen bestimmten Teil ihrer Namen ändern, d. h. „Datei“ in „Dokument“ ändern, sollte das Endergebnis davon sein:
großartig Dokument großartig Dokument , groß Dokument und Linux Dokument
Also werde ich den folgenden Befehl verwenden:
$ rename 's/file/document/' *
Außerdem möchte ich Kleinbuchstaben in Großbuchstaben übersetzen, also verwende ich den folgenden Befehl:
$ rename 'y/a-z/A-Z/' *
Wenn Sie detailliertere Informationen über „mv“ erhalten möchten, geben Sie einfach Folgendes ein:$ man rename an Ihrem Terminal.
Umbenennen eines Verzeichnisses in Linux
Ähnlich wie beim Umbenennen einer Datei in Linux können wir das Verzeichnis in Linux umbenennen. Geben Sie mit dem Befehl mv die Quelle als Pfad des Verzeichnisses und den neuen Verzeichnisnamen als Pfad des Ziels an.
Klingt verwirrend? Probieren Sie es aus –
VerzeichnisA befindet sich im Home-Verzeichnis. So können wir dieses Verzeichnis unter Linux umbenennen –
mv $HOME/DirectoryA $HOME/NewDirectoryName
Wenn sich Ihr gewünschtes Verzeichnis nicht im aktuellen Verzeichnis befindet, müssen Sie den vollständigen Pfad des Verzeichnisses angeben.
Wann verschiebt und benennt der mv-Befehl in Linux Dateien um?
Wenn ein Befehl zwei Funktionen ausführt, Dateien verschieben und umbenennen, fragen Sie sich vielleicht, wann er eine Datei verschiebt und wann er eine Datei umbenennt. Die Antwort ist einfach. Es benennt eine Datei oder ein Verzeichnis um, wenn Quell- und Zielpfad gleich sind; andernfalls wird es eine Datei oder ein Verzeichnis verschieben oder verschieben und umbenennen.
Linux mv-Befehl zum Verschieben von Dateien
Wie oben erwähnt, wird die Quelldatei oder das Quellverzeichnis in das Zielverzeichnis verschoben, solange Quelle und Ziel nicht identisch sind. Der folgende Befehl verschiebt eine Datei –
mv $HOME/DirectoryA/test.txt $HOME/Test/test.txt
Der folgende mv-Befehl verschiebt und benennt die Datei um –
mv $HOME/DirectoryA/test.txt $HOME/Test/test2.txt
Verwenden des mv-Befehls in Bash-Skripten
Denken Sie beim Schreiben eines Bash-Skripts daran, dass der Benutzer das Skript von jedem Verzeichnis aus ausführen kann. Denken Sie daran, den vollständigen Pfad zu den Quell- und Zielverzeichnissen anzugeben, wenn Sie den Befehl mv in einem Bash-Skript verwenden. Wenn Sie nur den Namen des Verzeichnisses oder der Datei eingeben und davon ausgehen, dass der Benutzer das Skript von diesem Verzeichnis aus ausführt, kann das Skript fehlschlagen, wenn der Benutzer es von einem anderen Ort aus ausführt.
Fazit
Sie können Dateien unter Linux umbenennen Verwenden eines Dateimanagers wie Dolphin oder Nautilus, aber ich denke, das Umbenennen von Dateien in Linux über das Terminal macht mehr Spaß, außerdem denke ich, dass der Befehl „Umbenennen“ leistungsfähiger ist als der Dateimanager. Sie können Ihren eigenen Weg wählen, aber ich bevorzuge immer das Terminal.