Abra o firefox do arquivo bash “Error: no display specified” [duplicado]

4

Eu preciso abrir um navegador e acessar meu servidor com o endereço IP 1.2.3.4. Primeiro eu ping meu servidor e se o ping não falhar, eu lanço a home page em um navegador. Para isso eu escrevi um arquivo bash da seguinte forma:

# add ip / hostname separated by white space
myHost=1.2.3.4

# no ping request
COUNT=1

count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
if [ $count -eq 0 ]; then
# 100% failed
echo "Host : $myHost is down (ping failed) at $(date)"
else
    firefox $myHost
fi

Mas estou recebendo uma mensagem de erro %código%. O Firefox não está sendo lançado. O que estou fazendo de errado.

Este arquivo é chamado a cada 5 minutos usando Error: no display specified . O cronjob parece estar funcionando bem.

    
por Pre 06.02.2014 / 07:48

1 resposta

3

Você precisa especificar a exibição.

Adicione isto ao seu script antes de executar o firefox

 export DISPLAY=:0

seu script seria como:

#add ip / hostname separated by white space
myHost=1.2.3.4
export DISPLAY=:0
# no ping request
COUNT=1

count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
if [ $count -eq 0 ]; then
# 100% failed
echo "Host : $myHost is down (ping failed) at $(date)"
else
    firefox $myHost
fi
    
por Maythux 06.02.2014 / 07:53