Das Umbennen von mehreren Dateien kann eine zeitraubende Angelegenheit sein. Das Tool Total Commander bringt ein "Mehrfach-Umbenenn-Tool" mit, mit dem sich diese Aufgabe deutlich vereinfachen lässt.
Inhaltsverzeichnis
Beispielszenarien
Immer dann, wenn mehrere Dateien mit einem ähnlichen Aufbau umbennant werden sollen, eignet sich das Mehrfach-Umbennen-Tool aus Total Commander. Folgende Szenarien könnten exemplarisch mit diesem Tool gemeistert werden:
Alter Dateiname | Neuer Dateiname |
---|---|
com_Ausgabe_yyyy-nn.pdf | com! yyyy.nn.pdf |
Kryptokompass-Ausgabe-n(n)-MONAT-yyyy.pdf | Kryptokompass_yyyy-MONAT.pdf |
PCG_nnyy.pdf | PCG_yyyy.nn.pdf |
Mehrfach-Umbenenn-Tool starten
Zunächst sind in Total Commander die gewünschten Dateien zu markieren. Anschließend kann das Mehrfach-Umbenenn-Tool per "Dateien" -> "Mehrfach-Umbenenn-Tool..." oder mit der Tastenkombination "Strg" + "M" gestartet werden.
Total Commander Massenumbenennung
Im Mehrfach-Umbenenn-Tool ist im oberen rechten Bereich der Haken "RegEx" zu aktivieren. Direkt darüber sind zwei Eingabefelder, in denen per "Suchen & Ersetzen" mit RegEx gearbeitet werden kann. In der unteren Liste ist sofort eine Vorschau der neuen Dateinamen zu sehen.

Nachdem in diesem Fenster alle Parameter eingestellt wurden (dazu später mehr in den Beispielszenarien), kann die eigentliche Umbenennung mit einem Klick auf "Start!" am unteren Fensterrand gestartet werden.
Beispielszenario 1
In diesem Szenario möchte ich diverse PDF-Dateien umbenennen. Die Dateien sind nach dem Schema com_Ausgabe_yyyy-nn.pdf benannt. "yyyy" steht dabei für eine vierstellige Jahreszahl und "nn" für eine zweistellige Nummer, die die Ausgabennummer der Zeitschrift repräsentiert. Das Zielformat lautet com! yyyy.nn.pdf.
An dieser Stelle brauchen wir RegEx, weil wir variable Teile aus dem alten Namen extrahieren und im neuen Namen weiterverwenden wollen. Das ist insbesondere die Jahreszahl und die Ausgabennummer.
Die Jahreszahl bekommen wir mit dem Ausdruck (\d{4}). Das \d steht dafür, dass wir eine Dezimalzahl suchen und {4} bedeutet, dass wir vier Ziffern suchen. Die Klammern geben an, dass es sich um eine Gruppe handelt. Unser alter Dateiname kann also mit dem Ausdruck com_Ausgabe_(\d{4})_(\d{2}) beschrieben werden.
Wir können nun mit Variablen auf die Ergebnisse des RegEx aus dem Feld "Suchen nach" referenzieren. Die Variablen nutzen wir mit einem Dollar-Zeichen gefolgt von einer Nummer, die quasi den gewünschten RegEx symbolisiert. Mit $1 bzw. $2 referenzieren wir also auf das Ergebnis des ersten bzw. zweiten RegEx aus dem Feld "Suchen nach". Den neuen Dateinamen erhalten wir entsprechend mit com! $1.$2.
Suchen & Ersetzen auf einem Blick
com_Ausgabe_(\d{4})_(\d{2})
com! $1.$2

Beispielszenario 2
In diesem Szenario sollen Dateien von Kryptokompass-Ausgabe-n(n)-MONAT-yyyy.pdf in Kryptokompass_yyyy-MONAT.pdf umbenannt werden.
Dieses Beispiel ist ein wenig komplizierter als das vorangegangene, da die Ausgabennummer "n(n)" ein oder zwei Stellen betragen kann. Außerdem steht zwischen der Ausgabennummer und der Jahreszahl eine unterschiedliche Zeichenfolge. Die ein oder zweistellige Ausgabennummer fangen wir mit dem RegEx (\d{1,2}) ab. Den variablen Textteil zwischen der Ausgabennummer und der Jahreszahl mit (.*). Entsprechend erhalten wir den Ausdruck Kryptokompass-Ausgabe-(\d{1,2})-(.*)-(\d{4}) für das "Suchen nach"-Feld.
In diesem Beispiel ist die Ausgabennummer nicht relevant, daher brauchen wir den Wert des ersten RegEx nicht. Der Ausdruck für das "Ersetzen durch"-Feld lautet entsprechend Kryptokompass_$3-$2.
Suchen & Ersetzen auf einem Blick
Kryptokompass-Ausgabe-(\d{1,2})-(.*)-(\d{4})
Kryptokompass_$3-$2

Beispielszenario 3
Die Dateien sollen von PCG_nnyy.pdf in PCG_yyyy.nn.pdf umbenannt werden. Die Besonderheit in diesem Beispiel ist, dass der variable Anteil aus einer zweistelligen Ausgabennummer gefolgt von einer zweistelligen Jahreszahl besteht. Einzig unschön an diesem Szenario ist, dass die Jahreszahl im neuen Dateinamen vierstellig sein soll, im alten Dateinamen aber nur zweistellig ist. Es ist aber nicht bekannt, wie die ersten zwei Ziffern heißen, also ob beispielsweise 21 für 2021 oder für 1921 steht. Daher trickse ich hier ein wenig und trage im "Ersetzen durch"-Feld fest "20" ein, da es zumindest in diesem Szenario passt.
Suchen & Ersetzen auf einem Blick
(\d{2})(\d{2})
20$2.$1

Mehr Möglichkeiten in Kombination mit der Umbenennmaske
Die obere Methode funktioniert, hat aber den unschönen Nebeneffekt, dass wir die Jahreszahl manuell eintragen müssen und ist dadurch deutlich unflexibler. Wir haben aber die Möglichkeit in Total Commander den Namen des darüberliegenden Verzeichnisses abzufragen und zu verwerten. In meinem Fall liegen die PDFs alle in einem Ordner, der die entsprechende Jahreszahl im Namen enthält. In meinem Fall etwa "2021". Diesen kann ich abfragen.
Zunächst lösche ich einmal in den beiden Feldern "Suchen & Ersetzen" und ergänze ein [P] in das Feld "Umbenennmaske". Wir sehen, dass der Name des darüberliegenden Verzeichnisses an den eigentlichen Dateinamen angehangen wird.
![Total Commander Mehrfach-Umbenenn-Tool Umbenennmaske [P]](https://nocksoft.de/wp-content/uploads/2023/08/total-commander-massenumbenennung-regex-04.webp)
Wir haben die Ausgangsbasis geschaffen und können nun den RegEx erstellen. Wir haben jetzt einen Dateinamen im Format PCG_AUSGABENNUMMER+ZWEISTELLIGEJAHRESZAHL+VIERSTELLIGEJAHRESZAHL (das + dient nur der lesbarkeit und ist natürlich nicht Teil des Dateinamens). Daher brauchen wir auch einen RegEx, der aus drei Gruppen besteht: zweistellige Ausgabennummer, zweistellige Jahreszahl und vierstellige Jahreszahl. Der RegEx dafür lautet (\d{2})(\d{2})(\d{4}). Davon brauchen wir aber nur die dritte (vierstellige Jahreszahl) und die erste Zahlengruppe (zweistellige Ausgabennummer). Diese können mit dem Ausdruck $3 bzw. $1 angesprochen werden.
Suchen & Ersetzen auf einem Blick
(\d{2})(\d{2})(\d{4})
$3.$1
![Total Commander Mehrfach-Umbenenn-Tool RegEx und Umbenennmaske [P]](https://nocksoft.de/wp-content/uploads/2023/08/total-commander-massenumbenennung-regex-05.webp)
Nützliche RegEx zusammengefasst
Folgende RegEx sind für die Massenumbenennung besonders hilfreich:
RegEx | Erklärung |
---|---|
() | Gruppierung |
\d | Dezimalzahl |
\d{2} | Zweistellige Dezimalzahl |
\d{1,2} | Ein- bis zweistellige Dezimalzahl |
.* | Jedes Zeichen darf beliebig oft vorkommen |
[a-z] | Alle Buchstaben von a bis z |
[a-z]{2,3} | Alle Buchstaben von a bis z (zwei bis drei Zeichen) |
Wer eigene RexEx schreiben und testen möchte, kann dies mit dem Tool regex101 tun. Außerdem zeigt das Tool zugleich Erklärungen zu den RegEx an.
Weiterführende Links
https://www.ghisler.ch/wiki/index.php/Multi-rename_tool
https://www.ghisler.com/screenshots/de/06.html
https://regex101.com/