Ich habe eine Menge Dateien mit diesem Namen : [name]_[phonenumber]_HH-mm-ss_dd-MM-yyyy.mp3
. Wie kann ich verschieben [name]
und [phonenumber]
bis zum Ende des Dateinamen, und setzen Sie das Datum am Anfang in Form von yyyy-MM-dd_HH-mm-ss
so bekomme ich yyyy-MM-dd_HH-mm-ss_[name]_[phonenumber]
?
Hier ist ein tatsächlicher Dateiname: [Unknown]_[+74999519075]_18-01-36_17-01-2014.mp3
Ich habe es versucht rename
, aber aufgrund mangelnder Regexp-Kenntnisse habe ich keine funktionierende Lösung gefunden.
command-line
scripts
Firun
quelle
quelle
Antworten:
Das sollte funktionieren:
Die Klammern erfassen Muster. Das erste erfasste Match ist
$1
das 2.$2
usw. Der obige Befehl lautet also:_
.+?
bedeutet Übereinstimmung mit dem kürzestmöglichen Muster aufgrund der?
,_
etc.Ich habe es getestet mit:
quelle
Wenn wir nur anhand Ihres Beispiels den Unterstrich als reservierten Begrenzer behandeln, können Sie ihn wie folgt umbenennen:
Das
-vn
am Ende bedeutet, dass es Ihnen nur sagt , was es in der realen Welt tun würde. Entfernen Sie das, damit es läuft.Hier ist mein Testgeschirr anhand Ihres Beispiels:
quelle