[bash] leggere stdout con dialog
Moderatore: Staff
Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
[bash] leggere stdout con dialog
Ciao a tutti,
qualcuno di voi mi sa spiegare come faccio a leggere l'output di un programma in esecuzione e a visualizzarlo con dialog??
mi spiego meglio...
da uno script lancio cdrecord e vorrei visualizzare l'andamento della masterizzazione con una barra di caricamento in dialog presente nello script stesso invece di visualizzare tutto l'output di cdrecord... è possibile secondo voi??
Spero mi saprete aiutare...
Grazie mille
Ciau
qualcuno di voi mi sa spiegare come faccio a leggere l'output di un programma in esecuzione e a visualizzarlo con dialog??
mi spiego meglio...
da uno script lancio cdrecord e vorrei visualizzare l'andamento della masterizzazione con una barra di caricamento in dialog presente nello script stesso invece di visualizzare tutto l'output di cdrecord... è possibile secondo voi??
Spero mi saprete aiutare...
Grazie mille
Ciau
-
Mario Vanoni
- Iper Master

- Messaggi: 3174
- Iscritto il: lun 3 set 2007, 21:20
- Nome Cognome: Mario Vanoni
- Slackware: 12.2
- Kernel: 3.0.4 statico
- Desktop: fluxbox/seamonkey
- Località: Cuasso al Monte (VA)
Re: [bash] leggere stdout con dialog
Scusa tanto, secondo man dialog
dialog --gauge ...
potrebbe essere quello che cerchi.
Mario Vanoni
dialog --gauge ...
potrebbe essere quello che cerchi.
Mario Vanoni
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: [bash] leggere stdout con dialog
grazie Mario,
infatti gauge era la dialog che volevo usare, il mio dubbio (forse non espresso troppo chiaramente) era sul come fare a far leggere a gauge l'avanzamento di cdrecord...
potrei lanciarlo in una subshell??
infatti gauge era la dialog che volevo usare, il mio dubbio (forse non espresso troppo chiaramente) era sul come fare a far leggere a gauge l'avanzamento di cdrecord...
potrei lanciarlo in una subshell??
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: [bash] leggere stdout con dialog
Prova ad eseguire questo
:
Spina
Codice: Seleziona tutto
(i=0; while (( $i <= 100 )); do echo $i; let i++; sleep 1; done )| dialog --gauge "ciao" 10 20Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: [bash] leggere stdout con dialog
ciao spina, grazie...
per provare gauge ho usato quest'altro script che avevo trovato in giro per la rete:
funziona più o meno come il tuo script...
Il fatto è che non so come catturare l'output di cdrecord (ma anche di un qualsiasi altro programma) e farlo leggere a gauge...
Questo è l'output di cdrecord durante la masterizzazione:
nel caso specifico stavo scrivendo una ISO DI 190 MB a 8x, la mia idea era di prendere la dimensione totale dell'immagine (190) e far avanzare gauge usando quel valore come 100%...
che ne pensi??
per provare gauge ho usato quest'altro script che avevo trovato in giro per la rete:
Codice: Seleziona tutto
#!/bin/sh
percent=0
(
while test $percent != 110
do
echo $percent
echo "XXX"
echo "This is how the gauge appears"
echo "XXX"
echo "See how the message changes"
echo "XXX"
percent=`expr $percent + 10`
sleep 1
done
) |
dialog --title "Gauge works!" --gauge "This is how a gauge appears on the command line" 10 60 0
Il fatto è che non so come catturare l'output di cdrecord (ma anche di un qualsiasi altro programma) e farlo leggere a gauge...
Questo è l'output di cdrecord durante la masterizzazione:
Codice: Seleziona tutto
Track 01: 190 of 190 MB written (fifo 100%) [buf 99%] 8.2x.che ne pensi??
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: [bash] leggere stdout con dialog
Se non ricordo male cdrecord non ti aggiorna sempre mostrandoti la percentuale di dati scritti? Il problema lo si dovrebbe risolvere in maniera molto più semplice di quello che pensi.
Spina
Spina
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: [bash] leggere stdout con dialog
leggendo il man l'unica cosa che ho trovato è stata il flag -v che mostra l'avanzamento del processo di masterizzazione, ma l'ho usata e non ho letto percentuali...
che intendi quando dici che il problema si dovrebbe risolvere in maniera più semplice di quello che penso??
che intendi quando dici che il problema si dovrebbe risolvere in maniera più semplice di quello che penso??
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: [bash] leggere stdout con dialog
Niente, io pensavo che cdrecord di suo ti mostrava delle righe consegutive ogni tot dicendoti l'avanzamento in percentuale dei dati scritti. Ma quello deve essere mkisofs allora.
Durante l'esecuzione di cdrecord non hai niente che cambia? La riga che hai postato prima? cos'è?
Spina
Durante l'esecuzione di cdrecord non hai niente che cambia? La riga che hai postato prima? cos'è?
Spina
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: [bash] leggere stdout con dialog
E' una riga che rimane fissa e si aggiorna ogni secondo, ma sempre sulla stessa riga... quello che dici tu è mkisofs...
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: [bash] leggere stdout con dialog
Ok, devi ridirigere l'output di cdrecord su di un tuo script (tanto lui stampa sempre sullo stdout). Fammi provare una cosa....danix85 ha scritto:E' una riga che rimane fissa e si aggiorna ogni secondo, ma sempre sulla stessa riga... quello che dici tu è mkisofs...
Spina
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
-
Mario Vanoni
- Iper Master

- Messaggi: 3174
- Iscritto il: lun 3 set 2007, 21:20
- Nome Cognome: Mario Vanoni
- Slackware: 12.2
- Kernel: 3.0.4 statico
- Desktop: fluxbox/seamonkey
- Località: Cuasso al Monte (VA)
Re: [bash] leggere stdout con dialog
Quando usavo (e funzionava ancora) mettevodanix85 ha scritto:E' una riga che rimane fissa e si aggiorna ogni secondo, ma sempre sulla stessa riga... quello che dici tu è mkisofs...
cdrecord ... -v -v ... file.iso
e segnalava la progressione in percentuale.
Mario Vanoni
PS Dal 12.0 cdrecord mi produce solo frisbee,
k3b va ... una tantum, growisofs sempre perfetto.
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: [bash] leggere stdout con dialog
ma growisofs lo posso usare solo per i dvd o sbaglio??Mario Vanoni ha scritto:PS Dal 12.0 cdrecord mi produce solo frisbee,
k3b va ... una tantum, growisofs sempre perfetto.
-
Mario Vanoni
- Iper Master

- Messaggi: 3174
- Iscritto il: lun 3 set 2007, 21:20
- Nome Cognome: Mario Vanoni
- Slackware: 12.2
- Kernel: 3.0.4 statico
- Desktop: fluxbox/seamonkey
- Località: Cuasso al Monte (VA)
Re: [bash] leggere stdout con dialog
Ovvio, bruciare solo DVD, ma con i prezzi di oggi,danix85 ha scritto:ma growisofs lo posso usare solo per i dvd o sbaglio??Mario Vanoni ha scritto:PS Dal 12.0 cdrecord mi produce solo frisbee,
k3b va ... una tantum, growisofs sempre perfetto.
vale la pena anche con un *.iso di 700MB.
Mario Vanoni
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Re: [bash] leggere stdout con dialog
Quello che chide danix si può comuque fare, basta creare uno scriptino che preleva i dati essenziali dall'output di cdrecord, ovvero il totale dei mega da scrivere e i mega scritti attualmente e poi inviarli a dialog. Appena ho un attimo provo a simulare poi vi dico.
Spina
Spina
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
- danix
- Staff

- Messaggi: 3289
- Iscritto il: ven 27 ott 2006, 19:32
- Nome Cognome: Danilo M.
- Slackware: 64 current
- Kernel: 6.12.13 x86_64
- Desktop: i3
- Località: Verona (VR)
- Contatta:
Re: [bash] leggere stdout con dialog
mentre aspetto buone nuove su questo fronte ne approfitto e vi ringrazio per l'interessamento... 