Wie kann ich viele Dateien gleichzeitig umbenennen?

43

Ich muss eine Reihe von Dateien umbenennen, um ihre Sortierreihenfolge festzulegen. Daher muss ich in der Lage sein, eine Art "Suchen und Ersetzen" durchzuführen, damit ich Teile der Dateinamen gleichzeitig ersetzen kann.

Welche Tools soll ich verwenden? Ich bevorzuge die grafische Benutzeroberfläche, aber eine Empfehlung für ein Befehlszeilentool wäre auch in Ordnung.

Jorge Castro
quelle

Antworten:

54

Es gibt einige, aber ich empfehle gprename, Installieren Sie gprename was einen guten Kompromiss zwischen Benutzerfreundlichkeit und Funktionalität darstellt.

Andere Tools sind: Rename Installieren Sie krename , Krename Installieren Sie Pyrenamer , Pyrenamer, cuteRenamer, ...

Ralf Hersel
quelle
6
pyRenamer ist überhaupt nicht schlecht.
Skalka
6
Ich habe Pyrenamer oft und manchmal gprename verwendet, es sei denn, die Änderung ist in der Befehlszeile sehr einfach durchzuführen. Das Beste an diesen GUIs ist die integrierte "Vorschau" -Aktion. Dies erspart Ihnen Kopfschmerzen.
Belacqua
4
+1 für gprename, habe gerade die erforderliche Umbenennung in 5 Sekunden versucht und durchgeführt
Pisu
Schade, weder gprename noch pyrename können Dateien über die Befehlszeile umbenennen
artfulrobot
gprename ist großartig am 14.04. Hat 300 Ordner durch Regex in 15 Sekunden umbenannt
3rgo
10

Qmv aus dem paket gefällt mir sehr gutrenameutils . Sie können Ihren bevorzugten (terminalbasierten) Texteditor verwenden, um Dateien umzubenennen. Ich bevorzuge es aufzurufen, mit -f dodem Sie eine einzelne Spalte (eine Zeile pro Datei) mit Dateinamen gibt. In Kombination mit der Leistungsfähigkeit von Vim erhalten Sie alle Tools, die Sie für die umfangreiche Bearbeitung von Dateinamen benötigen.

http://www.nongnu.org/renameutils/

dempa
quelle
7

Metamorphose

https://github.com/metamorphose

vielleicht etwas schwierig zu handhaben, aber sehr mächtig!

perseo22
quelle
Ich mag dieses wirklich. Es ist sehr leistungsfähig und läuft auf allen wichtigen Plattformen.
Daniels
5

Wenn Sie die regulären Ausdrücke von Shell und Perl mögen, würde ich empfehlen rename. Es ist so klar wie der Name.

verwechseln
quelle
3

Wenn Sie mit Emacs vertraut sind, denke ich, dass nichts Dired für diese Aufgabe übertrifft. Auch wenn Sie Emacs nicht so oft verwenden, finden Sie Dired möglicherweise ein praktisches Werkzeug.

sudo aptitude install emacs23-nox

Starten Sie den Emacs Dired-Modus für ein Verzeichnis:

emacs -nw path/to/dir/

Rufe nun den Editier-Verzeichnis-Modus auf:

C-x C-q (das ist Strg + x gefolgt von Strg + q)

Sie können die Dateinamen jetzt wie Text in jedem Nur-Text-Editor bearbeiten. Sie können sogar die Dateinamen durch reguläre Ausdrücke ersetzen (Emacs verwendet leider eine andere Syntax als PCRE).

Um beispielsweise Dateien mit Zähler umzubenennen (beginnend mit 1):
M-x replace-regexp(das ist Alt + x gefolgt von der Zeichenfolge "replace-regexp", die in den Minipuffer am unteren Bildschirmrand eingegeben wird).
Regexp DSCN\([0-9]+\).JPG
ersetzen : Ersetzen durch: \,(format "P%04d.jpg" (1 + \#))

So verwenden Sie einen Zähler im Dateinamen erneut:
M-x replace-regexp
Regexp DSCN\([0-9]+\).JPG
ersetzen : Ersetzen durch:\,(format "P%04d.jpg" (string-to-number \1))

Wenn Sie fertig sind, geben Sie Folgendes ein:

C-c C-c (das ist Strg + C, gefolgt von Strg + C)

Oder drücken Sie alternativ die folgende Taste, um Ihre Änderungen abzubrechen:

C-c Esc (das ist Strg + c gefolgt von Esc)

Matthias P.
quelle
2

Ich verwende normalerweise mmv , das auf der Befehlszeile basiert und eine etwas eigenartige Ausdruckssyntax hat, löse aber die meisten meiner Probleme.

Herr Hai
quelle
1

Wenn Sie Nautilus verwenden und wissen, wie Nautilus-Skripte funktionieren, können Sie Nautilus-Renamer verwenden .

Erik Lundmark
quelle
0

Auf der Kommandozeile gibt es auch die Möglichkeit, Sed und Shell zu benutzen:

ls *.c | sed "s#\(.*\)\.c#mv \0 \1.cpp#" | sh
Herr Hai
quelle
1
Das scheint nicht so zu funktionieren, wie es gedruckt wurde. Sie können auch '#' oder ein anderes Zeichen anstelle von "\" als Trennzeichen in Beispielen verwenden, um die Übersichtlichkeit zu erhöhen. zB ls .c | sed 's # ([az] ) \. c # \ 1.cpp #' `(In diesem Beispiel wird der Einfachheit halber nicht umbenannt, nur um den neuen Dateinamen anzuzeigen)
belacqua
+1 Ich finde es eine sehr schöne Möglichkeit (die zusätzlich in allen Distributionen funktioniert), ohne etwas zu installieren. Aber ich würde wahrscheinlich den -dSchalter für verwenden ls, um zu vermeiden, den Inhalt von Verzeichnissen aufzulisten, die möglicherweise auch enden .c(meistens kein Problem, aber immer noch ..).
Levite
0

Windows hat ein wirklich gutes Programm für dieses Dienstprogramm namens Bulk Rename. Hier ist die URL: http://www.bulkrenameutility.co.uk/Main_Intro.php .

Es gibt eine Unicode-Version von Windows 98, die portabel ist. Ich habe das in einen Ordner auf meinem Linux-System (Mint Maya) gelegt und wenn ich es durch Wine starte, funktioniert es wie ein Zauber. Die GUI ist sehr einfach zu bedienen und sehr flexibel.

Kevin Walburn
quelle
Ich möchte das fast in Wein laufen lassen. Es ist so viel besser als pyRenamer.
Teque5
0

Bei mir hat der pyRenamer am besten funktioniert. Nichts kommt (leider) dem von Total Commanders erstellten Umbenennungs-Tool nahe. pyRenamer lässt sich nicht in Krusader integrieren, aber wenn man bedenkt, dass Sie die Umbenennungswerkzeuge nicht verwenden, ist pyRenamer eine sehr gute Option.

Artur Barseghyan
quelle
0

Dies ist das Tool, das ich benutze: rnm ( man page ) ( weitere Beispiele )

Einige Verwendung:

rnm file-name -ns new-filename             # single file
rnm ./* -ns '/n//i/'                       # files will be sorted and indexed.
rnm ./* -rs '/search/new/g'                # 'search' in filenames will be replaced with 'new'
rnm ./* -ns '/fn//i/' -ss 'search'         # only files/directories which contain 'search' in their name will be indexed (renamed).
rnm ./* -ns '/fn//id/' -fo                 # file only mode, directories will be ignored.
rnm ./* -ns '/fn//id/' -fo -dp -1          # recursive to subdirectories all the way.

etc...
Jahid
quelle
Die Webseite Link geht zu neurobin.org/projects/softwares/unix/rnm und gibt einen 404.
muru
@muru: hmm, etwas ist mit der Seite passiert, aktualisiert auf Manpage-Link.
Jahid
0

Persönlich benutze ich Ant Renamer mit Wine, weil nichts, was ich ausprobiert habe (Métamorphose, PyRenamer, GPRename, KRename), so leistungsstark, einfach zu installieren und einfach zu bedienen ist. Und es ist immer noch FOSS, also sehe ich das Problem nicht.

Gamnamno
quelle
0

Krename ist eine KDE-GUI zum Umbenennen von Dateien, die in den meisten Paketmanagern verwendet wird.

Diese Antwort bezieht sich auf das Entfernen von führenden Nummern in Musikdateien wie MP3s. Aber wird Krenamedie Masse auch umbenannt?

  1. Laden Sie ausgewählte Dateien oder Ordner. Krename lädt alle Dateien im ausgewählten Ordner, klicken Sie einfach auf, Openohne alle Dateien einzeln auswählen zu müssen.

  2. Wechseln Sie zur DestinationRegisterkarte, um Dateien zu überschreiben oder in einen anderen Ordner zu kopieren.

  3. Gehen Sie zur FilenameRegisterkarte und dann zur Advanced FilenameRegisterkarte.

     Bild "Erweiterter Dateiname" mit den Standardeinstellungen.

  4. Entfernen Sie zunächst den Token $im TemplateFenster. Eine Änderung findet im Renamedunteren Fenster statt. Es werden keine Dateinamen angezeigt, nur die Dateierweiterungen.

    3. Das Bild zeigt, dass die Dateinamen entfernt wurden und die Dateierweiterungen erhalten bleiben.

  5. Klicken Sie auf Insert Part of Filename...und wählen Sie die Teile des Dateinamens aus, die Sie behalten möchten. Dieser Vorgang umfasst alle Dateien und die Änderungen sind im folgenden RenamedFenster ersichtlich .

    4. Das Bild "Teil des Dateinamens einfügen ..." zeigt, wie Sie den Dateinamen auswählen, indem Sie die gewünschten Abschnitte markieren.

  6. Klicken Sie auf OK. Die Dateien werden ohne die führenden Nummern umbenannt.

    5. Endgültige Ergebnisse zeigen.

  7. Klicken Sie Finishedabschließend rechts unten auf.

Scott
quelle
0

Inviska Rename ist ein neueres GUI-Dienstprogramm zum Batch-Umbenennen, das unter Linux ausgeführt wird (es funktioniert auch unter Mac und Windows) .

Bildbeschreibung hier eingeben

Neben den üblichen Umbenennungsfunktionen wie Ersetzen eines Teils des Texts durch einen anderen Text, Einfügen oder Entfernen von Text, Umbenennen von Dateierweiterungen usw. kann dieses Tool Ordner umbenennen, Musik anhand von Tags umbenennen und Fotos anhand ihrer Exif-Informationen umbenennen. Es kann sogar mithilfe von Dateiattributen wie dem Erstellungs- oder Änderungsdatum stapelweise umbenannt werden.

Weitere Funktionen umfassen die Vorschau der neuen Dateinamen und das Rückgängigmachen der Stapelumbenennung, was ich sehr nützlich finde.

Quelle

Logix
quelle