Я хочу запустить приложение при запуске под названием Software Updater. Вообще то, что я сделал бы, это добавить его в список приложений для запуска, и он будет запускаться каждый раз при загрузке. Вместо этого я хочу запустить его, только когда подключен WiFi.
Итак, в основном
Проверьте подключение WiFi, если он подключен, затем запустите программу обновления программного обеспечения. Если это не тогда ничего не делайте.Сохраненные WiFi, находящиеся в зоне действия, автоматически подключаются при загрузке.
Если вы используете NetworkManager, вы можете поместить скрипт в /etc/NetworkManager/dispatcher.d и заставить его «слушать» событие WIFI UP. Обратите внимание, что вам, возможно, придется изменить имя интерфейса WLAN
Вот пример:
#!/usr/bin/env sh
IFACE=$1 STATUS=$2
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
Вы могли бы расширить описанную выше логику только для того, чтобы срабатывать только в данной сети и т. Д.
Вот ссылка на события NetworkManager ($ 2), которые могут быть полезны: https://developer.gnome.org/NetworkManager/stable/NetworkManager.html
Если вы используете NetworkManager, вы можете поместить скрипт в /etc/NetworkManager/dispatcher.d и заставить его «слушать» событие WIFI UP. Обратите внимание, что вам, возможно, придется изменить имя интерфейса WLAN
Вот пример:
#!/usr/bin/env sh
IFACE=$1 STATUS=$2
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
Вы могли бы расширить описанную выше логику только для того, чтобы срабатывать только в данной сети и т. Д.
Вот ссылка на события NetworkManager ($ 2), которые могут быть полезны: https://developer.gnome.org/NetworkManager/stable/NetworkManager.html