我想编写一个 bash 脚本,如果我连接到特定的 wifi ssid,它将推迟 dropbox 自动同步。我如何捕捉此事件:例如,我在家工作并且同步已打开,如果我在另一个地方(咖啡馆、工作场所等),自动同步将关闭。
我还想根据 wifi ssid 执行一些其他任务。
答案1
您可以编写一个调度程序脚本,其中存储了/etc/NetworkManager/dispatcher.d/
例如以下内容(未经测试):
#!/bin/bash
# nm sets this values
INTERFACE=$1
ACTION=$2
SSID="yourssid"
ESSID=`iwconfig $INTERFACE | grep ESSID | cut -d":" -f2 | sed 's/^[^"]*"\|"[^"]*$//g'`
if [ "$INTERFACE" == "wlan0" ]; then
if [ "$SSID" == "$ESSID" ] && [ "$ACTION" == "up" ]; then
#activate dropbox sync
else
#deactivate dropbox sync
fi
fi