Ciao,
lo scriptino non era niente di ché, leggeva dallo standard input e poi estrapolava dalle righe lette il totale dei mega da masterizzare e quello che ha masterizzato, quindi produceva la percentuale attuale e la passava a dialog.
Mi sembrava chiaro che tu dovessi filtrare le righe in input eliminando quelle che non c'entravano. Comunque io ho simulato tutto grazie al tuo output e sono riuscito a farmi mettere tutte le informazioni in un textbox e poi la percentuale in un gauge. Putroppo però quando ho provato a masterizzare il CD ho scoperto che cdrecord non manda niente nello standard output, e lo si può vedere anche da quello che hai postato tu, manda solo la riga con 190 mega su 190 mega.
Peccato perchè la simulazione mi era venuta veramente carina
.
Però il dubbio a questo punto mi viene naturale, e tutti i software grafici, che altro non fanno se non lanciare cdrecord in background, come fanno per prelevare le informazioni per la progress bar? Se uno usa anche mkisofs allora si può fare, infatti mkisofs posta sempre nello standard error delle righe nuove con tutte le info necessarie a creare una progress bar, infatti basta fare
Codice: Seleziona tutto
mkisofs tmp/ 2>/dev/stdout 1>/dev/null | (IFS=$(echo -e '\n\t'); while read a; do echo $a | sed -n '/%/{s/\([[:digit:]]\+\).*/\1/;p}';done) | dialog --gauge "ciao" 8 20
tutto funziona a dovere.
Però i software grafici permettono di masterizzare anche iso già create senza lanciare (mi auguro) mkisofs. Quindi come fanno? Questo è un interessante quesito
Spina