Erfassungsgruppen werden beim Umbenennen von Dateien ignoriert

10

Ich habe eine Reihe von Dateien in diesem Format:

##. ## - Dateiname.mp4

Ich möchte sie umbenennen in:

s ## e ##. mp4

Das habe ich mir ausgedacht:

Benennen Sie -n "s / ^ (\ d {2}) \. (\ d {2}) um. * / s $ 1e $ 2.mp4 /"

Es funktioniert, wenn ich es auf http://regexr.com/ getestet habe, aber wenn ich den Befehl in meiner Ubuntu 12.04-Installation ausführe, werden alle meine Dateien in umbenanntse.mp4

Es sieht also so aus, als würden die Gruppen ignoriert oder nicht eingefügt oder so ähnlich. Vermisse ich etwas blendend Offensichtliches oder ist etwas anderes los?

Am Ende habe ich pyRenamer verwendet und das hat wunderbar funktioniert, aber ich würde immer noch gerne wissen, warum renamees nicht richtig funktioniert.

Prost und danke für jede Hilfe, die du mir geben kannst.

0x0049
quelle
du meinst s1e1.m4, s1e2.mp4
nux

Antworten:

14

Ich denke, vielleicht erlaubt Ihre Verwendung von doppelten Anführungszeichen der Shell, sich zu erweitern $1und$2

$ rename -nv "s/^(\d{2})\.(\d{2}).*/s$1e$2.mp4/" *.mp4
12.34 File name.mp4 renamed as se.mp4

wohingegen mit einfachen Anführungszeichen um den Umbenennungsausdruck

$ rename -nv 's/^(\d{2})\.(\d{2}).*/s$1e$2.mp4/' *.mp4
12.34 File name.mp4 renamed as s12e34.mp4
Steeldriver
quelle
Das war's! Sie, Sir, sind ein Genie.
0x0049