Networking

網際網路恢復時如何執行命令

  • May 20, 2016

有時我的wifi連接到路由器,但我的路由器沒有連接到網際網路。當我的網際網路恢復時(從命令行)如何執行命令?我想執行:

mpg123 /home/user/file.mp3

試試這個:

#!/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 響應,它將顯示“無網際網路”消息。如果它得到響應,它將執行您的命令並退出。

您可以定期 ping 一個網站並在 ping 返回成功時執行您的命令。類似於以下內容…

result=1
while [ $result -ne 0 ]
do
  ping -c 1 www.google.com
  result=$?
  sleep 5
done
mpg123 /home/user/file.mp3

引用自:https://unix.stackexchange.com/questions/284158