GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie benenne ich Dateien mit Leerzeichen mit der Linux-Shell um?

Entfliehen Sie dem Raum, z. Spring\ 2011 , oder verwenden Sie Anführungszeichen, z. 'Spring 2011' . In Zukunft ist es normalerweise eine schlechte Idee, Dateinamen mit Leerzeichen auf allen *NIX.

zu verwenden

Wenn Sie rename haben , können Sie dies verwenden:

rename ' ' '_' [filenames...]

Wenn Ihr Rechner über den Umbenennungsbefehl verfügt, werden alle Leerzeichen in allen Dateien/Verzeichnissen im aktuellen Arbeitsverzeichnis in Unterstriche geändert:

rename 's/ /_/g' *

Wenn Sie rename nicht haben oder ziehen Sie es vor, nur die Shell zu verwenden:

for f in *\ *; do mv "$f" "${f// /_}"; done

Aufgeschlüsselt:

  • *\ * wählt alle Dateien mit einem Leerzeichen im Namen als Eingabe für den for aus Schleife. Das Muster *X* wählt alle Dateien mit X aus in ihrem Namen und für das Sonderzeichen-Leerzeichen müssen wir es mit einem Schrägstrich maskieren, damit Bash es nicht als Trennung verschiedener Argumente behandelt.
  • Die Anführungszeichen um "$f" sind wichtig, weil wir wissen, dass der Dateiname ein Leerzeichen enthält und es sonst als 2+ Argumente für mv erscheinen würde .
  • ${f//str/new_str} ist eine Bash-spezifische String-Ersetzungsfunktion. Alle Instanzen von str werden durch new_str ersetzt .

Linux
  1. So verschlüsseln Sie Dateien mit gocryptfs unter Linux

  2. Linux-Grundlagen:So laden Sie Dateien auf der Shell mit Wget herunter

  3. Wie komprimiert und extrahiert man Dateien mit dem tar-Befehl unter Linux?

  4. So benennen Sie mehrere Dateien zusammen in Linux mit 3 Methoden um

  5. So suchen Sie nach Dateien mit Regex im Linux-Shell-Skript

So benennen Sie Dateien über die Befehlszeile in Linux um

So benennen Sie eine Datei (en) in Linux um

So ersetzen Sie Leerzeichen in Dateinamen durch Unterstriche in der Linux-Shell

So finden Sie Dateien mit dem fd-Befehl in Linux

Wie kann festgestellt werden, was auf einem Linux-Server den meisten Speicherplatz belegt?

So laden Sie Dateien in Rocky Linux 8 über die Befehlszeile mit wget herunter