Also mein spezifisches Problem ist, dass ich ein paar MP3-Alben heruntergeladen, die keine Titelnummern in ihrem Titel haben, so dass sie standardmäßig alphabetisch sortieren, was eindeutig nicht ideal ist. Ich möchte in der Lage sein, sie schnell mit einem Terminal-Befehl umzubenennen, wo ich Platzhalter benutze, um den Flaum zu sortieren. Also habe ich das aus ein paar Blickwinkeln ohne Erfolg versucht und möchte eine Anleitung.Wie ändere ich Dateinamen mit Wildcards in Bash
Auf der einen Seite möchte ich etwas wie mv *someSongN* 01-{reference original name here}
versuchen. Ich bin nicht klar, in dem zweiten Argument zu mv
, wie ich den ursprünglichen Dateinamen referenzieren, aber mit einer 01-
vorangestellt.
Die andere Tack, die ich versuchte, war eine temporäre Bash-Variable zu erstellen, gefolgt von einem mv
Befehl. Ich habe das getestet, indem ich eine Testdatei ohne Erweiterung erstellt habe - touch test
. Ich fand echo
und mv
behandeln Sie den Platzhalter anders. So, so tun, als ob die Test-Datei ist die einzige im Verzeichnis Anfang te-- ... var=te*; echo $var
gibt test
zurück, aber var=te*; mv $var $var.txt
gibt te*.txt
zurück. Also welche Strategie verwende ich hier. Ich könnte das auch mit einem grafischen Dateimanager machen, aber ich habe das schon vorher gemacht und fand es sehr ermüdend.
Haben Sie versucht, die 'find' Befehl? Sie können 'find' mit Platzhaltern ausführen und dies gibt den Dateinamen zurück, den Sie dann als Variable setzen könnten. – bluerojo
Haben die Tracks [ID3 Tags] (https://en.wikipedia.org/wiki/ID3) in ihnen? – dawg
thx, @bluerojo. – cfye14