- 论坛徽章:
- 15
|
这个在Solaris 下测试的,是个死循环,可以一直运行。不过你自己要按照你的Unix/Linux环境调整ping 的命令- IP=$1
- while true
- do
- num=$(ping -s $IP 64 3 |grep "100% packet loss" |wc -l) # 连续 ping 三次,如果3次都不通,则计数器num设为1, 否则为0
- if [[ $num == "1" ]]; then
- echo "$IP is down at `date` " |mailx -s "$IP is down" yourmailbox
- fi
- sleep 60
- done
复制代码 也可以在cronjob 里设置为每分钟运行一次。
脚本如下:- IP=$1
- num=$(ping -s $IP 64 3 |grep "100% packet loss" |wc -l) # 连续 ping 三次,如果3次都不通,则计数器num设为1, 否则为0
- if [[ $num == "1" ]]; then
- echo "$IP is down at `date` " |mailx -s "$IP is down" yourmailbox
- fi
复制代码 |
|