[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux_var] Bash e script in background
Ciao!
Sto smanettando un po con degli script per colmare la mia immensa
ignoranza in materia....
tra le varie cose mi sono imbattuto in un articolo _molot_ simpa di
linux&c dove parlava di "zenity", (x chi nn lo conosce e' un software
che visualizza in X delle finestre prefatte rendendo i classici script
un po "graficosi") che, tra le altre cose ha una modalita'
"notification" che gli permette di usare un icona di segnalazione e
delle "bolle" per segnalare eventi ascoltando i messaggi dallo stdin.
Ora, venendo al dunque, mi chiedevo, come si puo' fare per lanciare un
processo all'avvio del desktop che rimanga in background e quindi
nascosto che pero' comunichi con il "suo" processo ?
L'articolo di L&c propone una cosa del genere:
if [ "x$1" != "x--" ]; then
$0 -- &
exit 0
fi
Loro dicono che lanciato senza parameteri lo script rilancia un nuovo
processo di se in background $0 -- &
Personalmente a causa della mia scarsa conoscenza di bash ho fatto un po
fatica a capire sto passaggio, e a dire il vero non sono ancora sicuro
se devo interpretare x$1 come x valore per il valore passato al lancio
dello script $1 (e ancora, x-- e' x -1 ?)
Poi dopo dicono di fare:
exec 2>/dev/null
exec > >(zenity --notification --listen )
e presumo che io qui dica di mandare tutti gli errori di cio' che
eseguiro' in un posto dove prendono le cose con molta considerazione,
e di girare invece lo stdout a zenity che viene lanciato con quei parametri.
Dopodiche' posso gia' iniziare a comunicare con la mia icona, es:
echo "tooltip: Sto lavorando..."
echo "icon: info"
(e funziona)
Qui poi metto una serie di controlli in base a quel che voglio fargli fare
dopodiche' propongono:
sleep $valore
done
Ora, secondo me non va proprio da signori...
Consigli?
Ipotizzando di volere una situazione aggiornata al minuto:
devo tener conto che non posso chiudere il processo, perche' cosi
facendo mi sparirebbe l'icona
potrei creare uno script con all'interno un ciclo perpetuo schedulato
(ma come ne esco?)
chiaramente devo anche pensare a non ammazzare la macchina, perche'
potrei ad esempio lanciare 4 o 5 script simili...
:-D
Ciao
Fox
--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f
Sponsor:
Conto Corrente on line WebSella.it
* 6% di interessi per 6 mesi, in più hai gratis canone mensile, carta multifunzione, prelievi bancomat, pagamenti on line...
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=8002&d=11-6
--
Per cancellare l'iscrizione: <talking-unsubscribe at ml.linuxvar.it>
Archivi web e configurazione: http://ml.linuxvar.it/ml/