Ich habe mehrere Dateien mit dem Namen " that : screenshot 13:25.png
Windows", die möglicherweise aufgrund des ":" Probleme beim Öffnen dieser Dateien haben.
Wie kann ich es ersetzen?
command-line
user236152
quelle
quelle
Antworten:
In einem Terminal
cd
in das richtige Verzeichnis und dann diesen ausführen.Dies zeigt eine Vorschau des Umbenennens an. Es sollte ersetzen
:
mit-
.Wenn das richtig aussieht, entfernen Sie das
n
vom Ende und dann wird die eigentliche Umbenennung durchgeführt.Hinweis : Ubuntu-Versionen über 17.04 werden nicht mit ausgeliefert
rename
, sind jedoch in den Standard-Repositorys verfügbar. Verwendensudo apt install rename
Sie diese Option, um sie abzurufenquelle
n
) leicht entfernen können.rename 's/\:/-/g; s/%28/ /g; s/%29//g' ...
Hier ist eine reine Bash-Lösung:
Das
${var//pattern/replacement}
Format ersetzt alle Vorkommen vonpattern
mitreplacement
in der Variablen$var
. Weitere Informationen zur String-Manipulation von bash finden Sie hier .Wenn Sie dies für mehrere Zeichen tun möchten, können Sie sie einfach in eine Zeichenklasse einfügen. So zum Beispiel, zu ersetzen , alle
;
,:
,=
,+
,%
,,
mit Unterstrichen, könnten Sie tun:Grundsätzlich ist die Idee das
[ ]
heißtany of the characters listed
. Wenn Sie also alle Zeichen, die Sie ersetzen möchten, in die Zeichenklasse einfügen, werden alle Zeichen gleichzeitig behandelt.Für die spezifischen Zeichen , die Sie gefragt, sind die Dinge ein wenig komplexer , da einige von ihnen werden müssen entkommen (ich ignorierte die
/
da * nix erlaubt es in Dateinamen nicht mehr als Windows tut , so dass nicht ein sein wird Problem):Beachten Sie, dass ich dem entkommen bin
\
,'
und"
indem ich\
vor jedem einen Buchstaben hinzufüge .quelle
Wenn Sie eine GUI bevorzugen, installieren Sie Pyrenamer:
Dann führe es aus:
Es gibt Dutzende Optionen für Muster und das Umbenennen von Formaten.
quelle
Ich bevorzuge GUI aber als Nautilus Extension, also Nautilus Actions Extra :
(Siehe www.webupd8.org/2011/12/nautilus-actions-extra-pack-of-useful.html )
Wenn Sie dann die umzubenennenden Dateien auswählen und im Kontextmenü auf Umbenennen klicken, stehen Ihnen viele Optionen zum Umbenennen von Dateien zur Verfügung.
quelle
Das
renameutils
Paket enthält ein praktisches Programm,qmv
das interaktive Batch-Umbenennungen ermöglicht. Sie führen es in einem Verzeichnis oder einer Liste von Dateien aus, und es generiert eine temporäre Textdatei mit ihren Dateinamen und startet Ihren bevorzugten Editor. Wenn Sie den Editor verlassen, werden alle von Ihnen geänderten Dateinamen entsprechend umbenannt.qmv
Verwandelt ein Batch-Umbenennungsproblem in ein Textbearbeitungsproblem.In diesem Fall können Sie
qmv -f do *:*
die Namen aller Dateien bearbeiten, die einen Doppelpunkt enthalten, und dann den:%s/:/_/g
Befehl in Vim (oder ein entsprechendes Suchen und Ersetzen in dem von Ihnen verwendeten Editor).Die
-f do
Option legt fest, dass das Format der Textdatei nur den Namen der Zieldatei enthält, wodurch das Suchen und Ersetzen einfacher wird. Das Standardformat enthält zwei Kopien des Dateinamens in jeder Zeile, und Sie bearbeiten nur die zweite. Dies ermöglicht es, das Richtige zu tun, wenn Sie Zeilen in der Datei gelöscht oder neu angeordnet haben, dies ist jedoch nicht immer die einfachste. Es gibt auch andere Formate.Mit
qmv
können Sie stattdessen die generierte Datei über einen Befehl Ihrer Wahl weiterleiten, z. B.sed
wenn Sie die interaktive Funktion nicht möchten.quelle
Und hier ist ein Nautilus - Skript , dass ersetzt (alle?) Windows-inkompatiblen Zeichen mit einem Bindestrich in allen Dateinamen ausgewählt (basierend auf der Antwort von terdon ;-)
quelle
Thunar (der XFCE-Dateimanager) hat eine nette eingebaute Funktion zum Umbenennen von Dateien in großen Mengen. Es bietet Optionen zum Entfernen / Ersetzen von Zeichen, Suchen und Ersetzen, Nummerieren von Dateien und mehr.
Installieren Sie thunar:
Öffne thunar, navigiere zu deinen Dateien, wähle sie aus und wähle "Umbenennen" (über das Kontextmenü oder F2)
quelle
quelle