Başlık her şeyi söylüyor. pgrep Xvfb
sadece hile yarısı. Bana ekran numarasını söylemez.
Başlık her şeyi söylüyor. pgrep Xvfb
sadece hile yarısı. Bana ekran numarasını söylemez.
Yanıtlar:
Neyi başarmaya çalıştığınızdan emin değilim, ancak "x ekran bilgisi" ni çalıştırarak bir X Ekranın mevcut olup olmadığını kontrol edebilirsiniz:
xdpyinfo -display :0 >/dev/null 2>&1 && echo "In use" || echo "Free"
Not: Ekrana erişemiyorsanız, ekran da "Ücretsiz" olarak bildirilir. Başka bir yol, /tmp/.X0-lock
bir X sunucusunun PID dosyasını içeren varlığını kontrol etmektir .
Komutu görüntülemek yerine, binary ile eşleşen işlemleri kontrol etmek daha güvenilir bir yol olacaktır:
pids=$(pidof /usr/bin/Xvfb)
if [ -n "$pids" ]; then
processes="$(ps --format command --no-headers -ww --pid $pids)"
else
echo "Not running"
fi
Kaynak: https://github.com/Bumblebee-Project/Bumblebee/blob/master/install-files/common-functions#L112
display=":${processes##*:}";display="${%% *}"
ve ekran numarasını almak gibi bir şey kullanın ( Xorg
en azından yapılan komutla verildiğini varsayarak )
:0
yüzden basit kontrol :0
ihtiyaçlarım için yeterli. Tekrar teşekkürler!
xdpyinfo
benim için hile yapar, teşekkürler! Btw. Üzerinde çalışan Xvfb dayalı DISPLAY env değişkenini ayarlamak istiyorum: 0.