zenityコマンドでLinuxお手軽GUIプログラム

スポンサーリンク

はじめに

GUIが呼び出せるコマンドzenityを紹介します。
呼び出せるのはカレンダーや入力画面など結構多彩。
なんちゃってGUIアプリケーションが簡単に作れてしまう。

www.shangtian.tokyo

実行環境はLinux mintです。僕の場合はすでにインストールされていました。
もしインストールされていなかったら

$sudo apt-get install zenity

でインストールされるはず。

マニュアルはこちらから。

help.gnome.org

たぶんコマンドでhelpしたほうがわかると思う。




基本的な使い方


基本的な使い方は以下のとおり

$zenity ---アプリケーションオプション --title タイトル  --text テキスト

アプリケーションを指定したあとタイトルの指定とウィンド内に表示させたい
内容をtextに書き込む。どのアプリケーションソフトを使うかで、
アプリーケーションオプションの あとに指定出来るオプションも違う。
詳しい使い方は

$zenity --help

で見ることが出来る。


いろいろなGUIアプリ



じっさいどんなアプリがzenityで使えるのか順番に紹介していきます。


カレンダー


まずカレンダーから。アプリケーションオプションだけ指定して実行してみると

$zenity --calendar



つぎはカレンダーにタイトルを入れてみます。タイトル名はカレンダー


$zenity --calendar --title カレンダー 




エラー


つぎはエラー表示。タイトルとテキストを追加しました

$zenity --title エラー --text エラー






確認画面


yes or noの質問が出来るやつ。これはオプションなしでやりました


$zenity --question





ファイル選択



つぎはファイル選択画面の表示。これがこのコマンドだけで呼び出せるのは
すごく魅力的ですね〜

$zenity --file-selection







進捗表示バー


進行バーです。ただ呼び出すだけだと

$zenity --progress

このprogressのオプションは

--text テキスト
ダイアログに表示させるテキスト
--percentage パーセンテージ
初期のパーセンテージを指定する

--auto-close
100%に達したら自動で終了させる


$zenity --progress --title 進捗 --percentage 20




警告


これは警告表示

$zenity --error




お知らせ


おしらせしま〜すww

画面の端っこにヒョイッと表示されます。結構使いみち多そう。

$zenity --notification





パスワード


パスワード入力画面も表示できます。まずはただ呼び出してみる

$zenity --password

せっかくなんでパスワードを入れてみます。

シェルスクリプトを書きます。

#!/bin/bash

ENTRY=`zenity --password`

case $? in
         0)
                 echo "pass: `echo $ENTRY | cut -d'|' -f1`"
                 ;;
         1)
                 echo "do not accept. try again, please";;

        -1)
                 echo "unexpected error"

esac

実行権限を与えて

$sudo chmod u+x login.sh

実行してみる




<参考文献>

Zenity マニュアル