So benennen Sie unter Linux eine Gruppe von Dateien auf einmal um

So benennen Sie unter Linux eine Gruppe von Dateien auf einmal um

Unter Linux verwenden wir normalerweise den Befehl mv zum Umbenennen von Dateien, was beim Umbenennen einer einzelnen Datei sehr praktisch ist. Wenn wir jedoch eine Gruppe von Dateien umbenennen möchten, ist mv etwas machtlos. Aber das macht nichts. Heute stellen wir einen nützlichen Befehl vor, mit dem Sie Stapelumbenennungen durchführen können – den Befehl „rename“.

Lassen Sie uns die Verwendung des Umbenennungsbefehls im Detail vorstellen.

Anders als der mv-Befehl gibt der rename-Befehl nicht einfach den alten und den neuen Dateinamen an. Stattdessen verwendet es reguläre Ausdrücke ähnlich wie Perl. Sehen wir uns zunächst ein Beispiel an.

$ benenne ‚/alt/neu/‘ um in this.old
$ ls dies*
das.neu

Darunter wird s verwendet, um anzugeben, dass wir使用第二個字符串替換第一個字符串, und so this.old in this.new ändern.

Jemand könnte fragen, ob es nicht bequemer ist, im obigen Beispiel den Befehl mv this.old this.new zu verwenden? Das stimmt, aber mit einem solchen Befehl kann immer nur eine Datei gleichzeitig umbenannt werden. Heute werden wir jedoch eine Gruppe von Dateien auf einmal umbenennen.

Wie geht man damit um? Es ist ganz einfach. Schauen wir uns das folgende Beispiel an:

$ ls *.alt
Bericht.alt Zeitplan.alt Statistiken.alt dies.alt
$ umbenennen 's/alt/neu/' *.alt
$ ls *.neu
Bericht.neu Zeitplan.neu Statistiken.alt dies.neu

Aus den obigen Ergebnissen können wir ersehen, dass wir durch diesen einfachen Befehlsvorgang alle Dateien mit der Endung .old im aktuellen Verzeichnis in Dateien mit der Endung .new umbenennen können. Es ist einfach und effizient!

Wenn Sie meinen, das wäre alles, was der Umbenennungsbefehl zu sagen hat, dann ist Ihr Code defekt. Der Umbenennungsbefehl ist nicht auf das Ändern von Dateierweiterungen beschränkt, er kann auch jede beliebige Zeichenfolge in einem Dateinamen ändern. Wenn wir beispielsweise den Dateinamen „report.*“ in „review.*“ ändern möchten, können wir den folgenden Befehl verwenden:

$ umbenennen 's/report/review/' *

Beachten Sie, dass die im regulären Ausdruck angegebenen Regeln jeden Teil des Dateinamens ändern können, sei es der Dateiname oder die Erweiterung.

$ umbenennen 's/123/124/' *
$ ls *124*
status.124 bericht124.txt

Wenn Sie „rename“ interaktiv verwenden möchten, um zu sehen, welche Änderungen vorgenommen wurden, und um Fehler zu vermeiden, können Sie die Option -v verwenden.

$ umbenennen -v ‚s/123/124/‘ *
status.123 umbenannt in status.124
report123.txt umbenannt in report124.txt

Mit der Option -v können Sie eine Vorschau des Textes anzeigen, wenn Sie eine Zeile ändern, und eine weitere Vorschau anzeigen, wenn Sie eine andere Zeile ändern. Dies ist jedoch ineffizient. Was passiert, wenn ich eine Vorschau des Ganzen anzeigen und alles auf einmal ändern möchte, nachdem ich bestätigt habe, dass keine Probleme vorliegen?

Wir können die Option -n oder --nono verwenden, damit der Umbenennungsbefehl die oben genannten Anforderungen erfüllt.

$ umbenennen -n ‚s/alt/speichern/‘ *
umbenennen(logger.man-old, logger.man-save)
umbenennen(lyrics.txt-alt, lyrics.txt-speichern)
umbenennen (ältere Datei-, gespeicherte Datei-)
umbenennen(alteDatei, Datei speichern)
umbenennen(review.old, review.save)
umbenennen(Zeitplan.alt, Zeitplan.speichern)
umbenennen(stats.old, stats.save)
umbenennen(dies.alt, dies.speichern)

Wenn Sie mit den obigen Änderungen einverstanden sind, können Sie die Option -n entfernen, um den Dateinamen formal zu ändern.

Beachten Sie, dass der . im regulären Ausdruck „rename“ kein normaler Punkt ist, sondern ein Platzhalter, der jedem beliebigen Zeichen entspricht. Um dies zu verstehen, können wir uns auf den folgenden Befehl beziehen.

$ umbenennen -n ‚s/.alt/.save/‘ *
umbenennen(logger.man-old, logger.man.save)
umbenennen(lyrics.txt-old, lyrics.txt.save)
umbenennen(review.old, review.save)
umbenennen(Zeitplan.alt, Zeitplan.speichern)
umbenennen(stats.old, stats.save)
umbenennen(dies.alt, dies.speichern)

Im obigen Beispiel wird nicht nur .old in .save geändert, sondern auch -old in .save.

Wenn Sie möchten, dass . einen Punkt darstellt, müssen Sie ein \-Escape-Symbol hinzufügen, d. h. verwenden Sie \., um einen englischen Punkt darzustellen.

$ umbenennen -n ‚s/\.alt/\.speichern/‘ *
umbenennen(review.old, review.save)
umbenennen(Zeitplan.alt, Zeitplan.speichern)
umbenennen(stats.old, stats.save)
umbenennen(dies.alt, dies.speichern)

Um alle Großbuchstaben in Kleinbuchstaben zu ändern, können wir den folgenden Befehl verwenden.

$ umbenennen -n 'y/AZ/az/' W*
umbenennen(WARNZEICHEN.pdf, warnzeichen.pdf)
umbenennen(Will_Gardner_buttons.pdf, will_gardner_buttons.pdf)
umbenennen(Wingding_Invites.pdf, wingding_invites.pdf)
umbenennen(WOW-buttons.pdf, wow-buttons.pdf)

Verwenden Sie -n, um eine Vorschau der vorzunehmenden Änderungen anzuzeigen, und y, um die Groß-/Kleinschreibung zu ändern.

Im obigen Beispiel haben wir alle Dateinamen, die mit einem großen W begannen, in Kleinbuchstaben geändert.

Zusammenfassen

Wenn Sie eine einzelne Datei umbenennen möchten, können Sie den Befehl mv verwenden. Wenn Sie eine Gruppe von Dateien umbenennen möchten, ist es bequemer, den Befehl „rename“ zu verwenden. Beachten Sie, dass es am besten ist, die Option -n hinzuzufügen, wenn Sie den Befehl „rename“ verwenden, um zuerst eine Vorschau der vorzunehmenden Änderungen anzuzeigen und dann nach der Bestätigung der Richtigkeit umzubenennen, um Unfälle zu vermeiden.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • So benennen Sie in Linux mehrere Dateien gleichzeitig um

<<:  Pycharm2017 realisiert die Verbindung zwischen Python3.6 und MySQL

>>:  MySQL-Gruppierungsmethode für die Gruppierungssequenz einzelner Wörter und die Gruppierung mehrerer Felder

Artikel empfehlen

Grundlegendes Verständnis und Verwendung der HTML-Auswahloption

Detaillierte Erklärung von HTML (Option auswählen)...

So installieren Sie suPHP für PHP5 auf CentOS 7 (Peng Ge)

Standardmäßig wird PHP unter CentOS 7 als Apache ...

MySQL 8.0.19 Installations- und Konfigurations-Tutorial unter Windows 10

Ich werde nächstes Semester MySQL lernen. Ich hab...

Installations-Tutorial zur dekomprimierten Version von MySQL5.7.21 unter Win10

Installieren Sie die entpackte Version von Mysql ...

Beispiel für die Verwendung von rem zum Ersetzen von px in einem Vue-Projekt

Inhaltsverzeichnis Werkzeug Installieren Sie das ...

JavaScript-Implementierung eines einfachen Additionsrechners

In diesem Artikelbeispiel wird der spezifische Ja...

Grundlegende Hinweise zu HTML (empfohlen)

1. Grundstruktur der Webseite: XML/HTML-CodeInhal...

Einführung in die Vue3 Composition API

Inhaltsverzeichnis Überblick Beispiel Warum wird ...

Zusammenfassung der Verwendung von setTimeout() in JavaScript

Inhaltsverzeichnis 1. Einleitung 2. Der Unterschi...

Eine kurze Diskussion über das Funktionswissen von Python

Inhaltsverzeichnis Zwei Hauptkategorien von Funkt...

Analyse des Prinzips des dynamischen Proxys des Mybatis-Mappers

Vorwort Bevor wir mit der Erklärung des Prinzips ...

Natives JS zum Erzielen digitaler Tisch-Spezialeffekte

Dieser Artikel beschreibt einen Digitaluhreffekt,...