
有時我的wifi已連接到路由器,但我的路由器未連接到網路。當我的網路恢復時,如何執行命令(從命令列)?我想執行:
mpg123 /home/user/file.mp3
答案1
嘗試這個:
#!/bin/bash
while :; do
ping -c 1 8.8.8.8 >/dev/null 2>&1
if [ $? = 0 ]; then
break
else
echo 'No internet'
fi
sleep 1
done
mpg123 /home/user/file.mp3
如果沒有 ping 回應,它將顯示「無網路」訊息。如果它得到回應,它將執行您的命令並退出。
答案2
您可以定期 ping 網站並在 ping 返回成功時執行命令。像下面這樣的東西......
result=1
while [ $result -ne 0 ]
do
ping -c 1 www.google.com
result=$?
sleep 5
done
mpg123 /home/user/file.mp3