Gerade habe ich den Einzeiler, mit dem ich ab und zu meine sämtlichen MP3-Files beackere, um die den Inhalt der ID3-Tags in die ID3V2-Tags zu kopieren, in diesem Eintrag aktualisiert, da dachte ich mir, dass das doch einen eigenen Eintrag wert sein sollte, weil's sonst doch niemand mitkriegt. So sei es, hier ist die aktuelle Kommandozeile:
find . -type f -name \*.mp3 | while read bla; do id3v2 -C "$bla"; id3v2 -T `basename "$bla"|sed -e 's/^\([0-9]*\).*/0\1/'|xargs expr 0 +` "$bla"; done
Neu ist daran, dass jetzt auch Filenamen mit Leerzeichen korrekt behandelt werden, ohne dass hinterher Mülldateien im Filesystem herumgammeln, und dass die Tracknummernerkennung etwas robuster ist. Dateien, deren Namen nicht mit Zahlen beginnen, erhalten eine "0" als Tracknummer.
BTW noch ein kleiner Tipp, falls Ihr CDs mit grip oder ähnlichen Tools rippt: Man achte von Anfang an darauf, dass man sowohl für die ID3-Tags als auch für die Dateinamen den richtigen Zeichensatz eingestellt hat. Weiterhin stelle man sich die Frage, ob man Dateien und Verzeichnisse überhaupt mit Umlauten und ähnlichen Krankheiten kontaminieren will, weil soetwas nämlich spätestens dann zum PITA wird, wenn man sein ganzes System einmal von ISO-8859-* auf UTF-8 umstellt. Dann darf man nämlich sowohl im Filesyystem als auch in den Playlisten alles konvertieren...