Execute somente um aplicativo específico na inicialização se o WiFi estiver conectado

1

Eu quero executar um aplicativo na inicialização chamado Software Updater, Geralmente o que eu faço é adicioná-lo à lista de aplicativos de inicialização e Ele iria começar toda vez que eu arrancar. O que eu quero fazer é que eu queira executá-lo apenas quando o WiFi estiver conectado.

Então, basicamente

  • Verifique se há WiFi conectado, se estiver conectado, em seguida, execute Atualizador de software
  • Se não estiver, não faça nada.

Os WiFi salvos que estão dentro do alcance são automaticamente conectados na inicialização.

    
por Sumeet Deshmukh 05.07.2017 / 07:34

1 resposta

2

Se estiver usando o NetworkManager, você pode colocar um script em /etc/NetworkManager/dispatcher.d e "ouvir" um evento UP UP. Note que você pode ter que mudar o nome da interface WLAN

Aqui está um exemplo:

#!/usr/bin/env sh

IFACE= STATUS=
IW=/usr/bin/iw
WLAN_IFACE=wlp1s0

if [ ! -x $IW ]; then
    exit 1
fi

if [ "$IFACE" = $WLAN_IFACE ] && [ "$STATUS" = "up" ]; then
    echo "[SCRIPT] -- PUT SOMETHING HERE YOU WANT TO HIT LOGS --"
    echo "Replace this echo with a command line instruction"
fi

Você pode estender a lógica acima para apenas disparar em uma determinada rede, etc.

Aqui está uma referência aos eventos do NetworkManager (US $ 2) que podem ser úteis: link

    
por Mark 15.07.2017 / 13:06