回答:
あなたが何を達成しようとしているのかわかりませんが、「x display info」を実行することでXディスプレイが利用可能かどうかを確認できます。
xdpyinfo -display :0 >/dev/null 2>&1 && echo "In use" || echo "Free"
注:ディスプレイにアクセスできない場合は、「無料」としても報告されます。別の方法は/tmp/.X0-lock
、XサーバーのPIDファイルが含まれているかどうかを確認することです。
コマンドを表示する代わりに、より信頼性の高い方法は、バイナリに一致するプロセスをチェックすることです。
pids=$(pidof /usr/bin/Xvfb)
if [ -n "$pids" ]; then
processes="$(ps --format command --no-headers -ww --pid $pids)"
else
echo "Not running"
fi
ソース:https : //github.com/Bumblebee-Project/Bumblebee/blob/master/install-files/common-functions#L112
display=":${processes##*:}";display="${%% *}"
(それがために行われているコマンドで与えられていますと仮定ディスプレイ番号を取得するためにXorg
、少なくともを)
:0
ので、単純なチェックで:0
十分です。再度、感謝します!
xdpyinfo
私のためにトリックを行います、ありがとう!ところで :0で実行されているXvfbに基づいてDISPLAY環境変数を設定したい。