Uma maneira simples e eficaz de testar se o seu servidor de exibição está disponível e é válida para testá-lo com xhost
. Você não pode confiar sempre na verificação de um valor na variável DISPLAY
, pois pode ser definido com um valor inválido.
if xhost >& /dev/null ; then echo "Display exists"
else echo "Display invalid" ; fi
A razão pela qual eu faço isso é porque eu executo vários scripts no meu usuário crontab
que operam no visor quando ele existe, mas funcionam de forma diferente quando não. Na parte superior do meu crontab
, defino a variável DISPLAY
para :0
, mesmo que ainda não exista. Scripts no crontab
que começam com @reboot
serão iniciados independentemente de você ter uma exibição ou não. Isso permitirá que você detecte dinamicamente quando seu monitor aparece e entra no mesmo script.
NOTA: O >&
só funciona em bash
> = 4. Caso contrário, use > /dev/null 2>&1