Hallo ich habe ein Verzeichnis mit mehreren Unterverzeichnissen in denen ich Dateien umbenennen möchte. Einige Dateien haben eine Klammer ( ) im Dateinamen und die möchte ich durch ein Minus-Zeichen - ersetzten lassen. Nun bin ich nicht fit in regulären ausdrücken aber kann mir denken das man dafür eine fixe Lösung findet. Hat jemand eine Idee?
Script zum Dateinamen umbenennen
Anmeldungsdatum: Beiträge: 806 |
|
||||
Anmeldungsdatum: Beiträge: 4378 Wohnort: Göttingen |
Das wäre wohl ein Job für rename. |
||||
Anmeldungsdatum: Beiträge: 11176 Wohnort: München |
krename kann das z.B. recht nett für Leute, die sowas gerne mit einer GUI machen. In diesem PPA von mir steckt im Paket ein ein Patch, der verhindert, dass das Programm unsichtbar im Hintergrund weiterläuft, wenn man den Dialog zum Ersetzen schließt. Ansonsten ist das z.B. mit Python3 schnell erledigt:
Dem Skript kann man dann einfach das oder die gewünschten Verzeichnisse mitgeben, die rekursiv durchsucht werden sollen und wo ' Oder geht es darum eine leere Klammer durch ein einzelnes Minus-Zeichen zu ersetzen? Das würde dann so aussehen:
|
||||
(Themenstarter)
Anmeldungsdatum: Beiträge: 806 |
Leider klappt es nicht. Das Script erzeugt keine Fehlermeldung aber nen Dateiname ändert sich auch nicht.... |
||||
Supporter, Wikiteam
Anmeldungsdatum: Beiträge: 8554 Wohnort: Münster |
Es geht mit Shell-Globs und Stringverarbeitung in der bash. In jedem Verzeichnis diesen Befehl ausführen: for X in *\(* ; do mv "$X" "${X/\(/-}" ; done Eventuell das gleiche Spiel mit der schließenden Klammer wiederholen und natürlich muss man jedes Verzeichnis betreten. Das geht aber auch mit einem Skript. |
||||
Projektleitung
Anmeldungsdatum: Beiträge: 12801 |
Ungefähr so
Edit: das ersetzt Klammernpaare mit allem dazwischen durch einen Strich. Man könnte es auch komplett löschen. Was auch immer. |