Win版のXamppに付いてくるコントロールパネルが羨ましいので試してました。
コード: 全て選択
#! /bin/bash
export MAIN_DIALOG='
<vbox>
<frame Operate My Selections>
<hbox>
<text>
<label>Apache2 start</label>
</text>
<button>
<label>start</label>
<action>/opt/lampp/lampp startapache</action>
</button>
</hbox>
<hbox>
<text>
<label>Apache2 stop</label>
</text>
<button>
<label>stop</label>
<action>/opt/lampp/lampp stopapache</action>
</button>
</hbox>
<hbox>
<text>
<label>Opera</label>
</text>
<button>
<label>start</label>
<action>"/root/my-applications/opera/opera.sh"</action>
</button>
</hbox>
</frame>
<hbox>
<button cancel></button>
</hbox>
</vbox>
'
gtkdialog3 --program=MAIN_DIALOG
ラッパーで起動しやがれとシェルに言われたので、試しに書いた別のファイル(opera.sh)から exec して opera を起動(eval でもいけるね)。
ブラウザを閉じるまでは gtkdialog がアクティブに戻らずに停止したままです。
このソフトに限らず、おそらくは画面が開くアプリケーションはどれもこの状態になるのではないかと。
元からある opera ファイル(本来これをクリックして起動するやつです)の初めのほうに
コード: 全て選択
kill $(ps | grep 'opera.sh' | sed 's/^\s*//' | cut -d ' ' -f 1)
何か gtkdialog の仕組みでフォーカスを戻してきてくれる構文なんてないものでしょうか。
ざざーっと「/usr/share/doc/gtkdialog3/gtkdialog.txt」を見てもイマイチわかりません。
ご存知のかた、教えて頂けませんか? 全然急いでおりませんので。わかった時にでも。
こんなことせずに素直にショートカット作っとけって? 多分それが正しいと思います。