El título lo dice todo. pgrep Xvfb
solo hace la mitad del truco. No me dirá el número de pantalla.
El título lo dice todo. pgrep Xvfb
solo hace la mitad del truco. No me dirá el número de pantalla.
Respuestas:
No estoy seguro de lo que está tratando de lograr, pero puede verificar si una pantalla X está disponible ejecutando "x información de pantalla":
xdpyinfo -display :0 >/dev/null 2>&1 && echo "In use" || echo "Free"
Nota: si no puede acceder a la pantalla, también se informará como "Gratis". Otra forma es verificar si existe /tmp/.X0-lock
el archivo PID de un servidor X.
En lugar de mostrar el comando, una forma más confiable sería verificar los procesos que coinciden con el binario:
pids=$(pidof /usr/bin/Xvfb)
if [ -n "$pids" ]; then
processes="$(ps --format command --no-headers -ww --pid $pids)"
else
echo "Not running"
fi
Fuente: https://github.com/Bumblebee-Project/Bumblebee/blob/master/install-files/common-functions#L112
display=":${processes##*:}";display="${%% *}"
obtener el número de pantalla (suponiendo que se dé con el comando que se realiza Xorg
al menos)
:0
, por lo que una simple verificación :0
es suficiente para mis necesidades. ¡Gracias de nuevo!
xdpyinfo
hace el truco para mí, gracias! Por cierto. Quiero establecer la variable DISPLAY env basada en Xvfb que se ejecuta en: 0.