Streamripper: mit „ls“ mehrfach vorhandene MP3-Dateien suchen, um sie zu entfernen

Nachdem ich vor kurzem einmal Streamripper auf meiner „Synology DiskStation DS207+“ installiert hatte und so schon einige Gigabyte an Musik gespeichert habe, hadere ich noch etwas mit mehrfach vorhandenen Stücken. Kann man die nicht entfernen, wenn Streamripper das schon nicht selbst machen kann? Man kann.

Eigentlich sollte Streamripper selbstständig dafür sorgen, dass keine Doubletten entstehen. Anscheinend funktioniert das leider nicht immer so, wie es gedacht ist.

Also muss man gelegentlich nachschauen und Doubletten (Dateiname lautet „*([0-9]).mp3“) manuell entfernen:

ls -1 *\([1-9]\)\.mp3|while read file; do rm „$file“; done

Mit dieser kurzen aber hilfreichen Zeile Shellcode werden alle Dateien gesucht, die Kopie einer schon einmal gerippten Datei sind (Zähler 0, 1, … in Klammern vor dem Punkt im Dateinamen), gesucht und gleich entfernt. Leerzeichen in Dateinamen, die standardmäßig von Streamripper nicht vermieden oder ersetzt werden, werden ebenfalls maskiert. Anderenfalls versucht rm, für jedes teilwort des Dateinamens eine entsprechend benannte Datei zu entfernen. Dies schlägt natürlich fehl.

Das ganze kann als cronjob verpackt recht einfach zur regelmäßigen Bereinigung von Doubletten genutzt werden. Ich finde das Prinzip „kleine Tools mit fest definierter Wirkungsdomäne geschickt kombiniert“ unter Unix und Linux immer wieder genial.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert