Ich möchte mich mal ein bisschen mit Shell-Skripting beschäftigen und habe mir dazu eine sinnvolle Aufgabe gestellt. Ich möchte CDs damit rippen können. Also einfach CD einlegen, Skript starten und ein Verzeichnis mit MP3-Dateien erhalten (mein Ei-Pott unterstützt kein OGG). Dazu arbeite ich mit cdparanoia und lame. (Wie ich die Daten aus der CDDB bekomme, weiss ich noch nicht genau. Vielleicht schreibe ich mir dafür ein kleines C-Tool).
Da ich eigentlich immer die gleichen Parameter habe (Kodierungsoptionen für lame, Dateiname der MP3-Dateien usw.) mache ich das Skript gänzlich ohne irgendwelche Parameter, einfach ./cdrip.sh und los gehts.
Das ganze sollte so aufgebaut sein:
Code: Alles auswählen
Lese Titelinformationen von CD aus (cdparanoia -Q)
Hole CDDB-Informationen zu CD
Iteriere über alle Titel
lese Titel n aus (n.wav]
codiere Titel n als MP3 (n.mp3)
Schreibe CDDB-Informationen zu Titel n (M3U-Informationen)
Benenne Titel gemäss M3U-Informationen ([n] - [Songtitel].mp3)
Fahre fort mit nächstem Titel
Code: Alles auswählen
cdparanoia III release 10.2 (September 11, 2008)
Table of contents (audio tracks only):
track length begin copy pre ch
===========================================================
1. 25557 [05:40.57] 0 [00:00.00] no no 2
2. 27673 [06:08.73] 25557 [05:40.57] no no 2
3. 15827 [03:31.02] 53230 [11:49.55] no no 2
4. 20548 [04:33.73] 69057 [15:20.57] no no 2
5. 44515 [09:53.40] 89605 [19:54.55] no no 2
6. 22910 [05:05.35] 134120 [29:48.20] no no 2
7. 20025 [04:27.00] 157030 [34:53.55] no no 2
8. 21067 [04:40.67] 177055 [39:20.55] no no 2
TOTAL 198122 [44:01.47] (audio only)
Code: Alles auswählen
cdparanoia -Q | grep -c [0-9]\.[:space:][0-9]
Wie komme ich an den Output heran? Und kennt jemand eine bessere Lösung für die Ermittlung der Trackanzahl?
Danke & Gruss
paedubucher