スクリプトの開始は次のとおりです。
if [ -z $DISPLAY ]
then
DIALOG=dialog
else
DIALOG=Xdialog
fi
私は理解
$DISPLAY
擬似端末に添付された値を保存します。[ -z $DISPLAY ]
$ DISPLAYに値があるか空の文字列かをテストします。
$DISPLAY
値を保持する目的は何ですか?空の文字列がある場合の違いは何ですか?[ -z $DISPLAY ]
スクリプトをさらに実行するのに真と偽を知ることが重要な理由は何ですか?
答え1
このスクリプトが何であれ、この$DISPLAY
値を使用してX11環境で実行されていることを確認します($DISPLAY
スクリプトがデスクトップ環境で実行されている場合はこの値が設定されます)。実際の価値にはまったく興味がありません。
X11で実行している場合
DIALOG
に設定すると、Xdialog
ダイアログボックスを表示するX11プログラムになります。X11で実行されていない場合(ヘッドレスシステムやSSHセッションなど)、ダイアログボックスを表示する呪い(または少なくともテキストベース)プログラムに
DIALOG
設定されます。dialog
後でこのスクリプトを使用して、$DIALOG
ユーザーに適したダイアログボックスを表示できます。