Pagina 1 di 1
Script misto dialog Xdialog
Inviato: ven 13 ott 2006, 11:10
da giberg
Ciao
è possibile creare uno script misto dialog e Xdialog in modo che se viene lanciato da shell lancia la parte in dialog se invece clicco sull'icona lancia la parte in Xdialog? Che condizione dovrei porre all'inizio dello script?
Inviato: ven 13 ott 2006, 11:25
da albatros
Non è più semplice e pulito se dai un nome leggermente diverso allo script per X e colleghi a quello l'icona?
es. metti che lo script si chiami tensor, quello per x lo chiami tensorx, a lui fai puntare l'icona sul desktop, ma lo chiami tensor come quello per terminale...
Inviato: ven 13 ott 2006, 11:34
da giberg
Sì è vero, un'altra volta avevo fatto così. Pensavo ci fosse un modo per riuscire a fare tutto in uno script unico tramite una condizione. Ma effettivamente non credo sia così banale la cosa. Avevo visto che esisteva una condizione che verificava qualora lo stdin fosse un terminale. Però uno script Xdialog comunque viene eseguito su terminale, quindi parte comunque lo script dialog (basta andare sul primo terminale, quello attivo con X11) e vedo che dietro è partito lo script dialog. Non essendo ancora in grado di conoscere a fondo lo scripting meglio che al momento mi fermi qui...
Vabbè penso che farò come mi hai suggerito tu.
Re: Script misto dialog Xdialog
Inviato: ven 13 ott 2006, 12:32
da d3v1D
giberg ha scritto:Ciao
è possibile creare uno script misto dialog e Xdialog in modo che se viene lanciato da shell lancia la parte in dialog se invece clicco sull'icona lancia la parte in Xdialog? Che condizione dovrei porre all'inizio dello script?
Prova un po'...
#!/bin/sh
#
if ps aux | grep "X :" 1> /dev/null 2> /dev/null
then
script="/bin/xdialog"
else
script="/bin/dialog"
fi
ecc.
Inviato: ven 13 ott 2006, 14:09
da capitanfuturo
Altra idea, così puoi scrivere un unico script:
Codice: Seleziona tutto
if [[ "$DISPLAY" && "$(which Xdialog 2>&1 | grep -v "which: no")" ]]; then
dialog="Xdialog --fill --wrap"
xflag="yes"
else
dialog="dialog"
unset xflag
fi
NOTA: per maggiori informazioni prova a dare un occhhio al pacchetto netpkg usato da Zenwalk, è stato scritto da Hyperion ed è ovviamente sotto licenza GPL
http://download.zenwalk.org/i486/zenwal ... h-6z30.tgz.
Netpkg ha la particolarità di utilizzare in un unico script sia Xdialog che dialog normale
Inviato: ven 13 ott 2006, 17:48
da giberg
Grazie! Appena ho due minuti provo tutto.