欢迎来到代码驿站!

Shell

当前位置:首页 > 脚本语言 > Shell

ping发现掉包报警的shell代码

时间:2021-02-10 14:51:57|栏目:Shell|点击:
复制代码 代码如下:

#!/bin/bash
PING=`which ping`
DATE=`date +%Y%m%d%H%M`
TAIL=`which tail`
LOG=./ping$DATE.log
HOSTS="selboo.com.cn 221.130.191.97"
COUNT=200
for myHost in $HOSTS
do
count=$(ping -c $COUNT $myHost | grep ‘loss' | awk -F',' '{ print $3 }' | awk -F “%” ‘{ print $1 }')
if [ $count -ge 10 ]; then
/bin/echo selboo | mutt -s "$myHost pingispacketloss>10% $DATE" root@selboo.com.cn
fi
done
exit 0

复制上以上内容为ping.sh加入crontab中让其10分钟跑一次,其中发邮件程序为mutt

以下是补充:

linux 的和solaris的居然不一样!
复制代码 代码如下:

#!/bin/sh
PingConf='/opt/monitor/newIp'
#File where the log will be stored
LogDir='/opt/monitor/newLog'
#Define the interval time
INTERVAL='10'
#Define the alarm process
########################################################
proc_main()
{
while read IpAddress
do
#ingore any hash signs
case $IpAddress in
#*);;
*)
ping -w 20 $IpAddress -c 5 >errtmp$$
# ping $IpAddress -c 10 >errtmp$$
if [ $? = 0 ] ; then
rm errtmp$$
else
rm errtmp$$
ErrTime=`date +%Y/%m/%d/%H:%M:%S`
# echo "$ErrTime"": ""$IpAddress"" cann't be connected">>$LogDir
echo "$ErrTime"":""$IpAddress"" cann't be connected
">>$LogDir
sleep 1
cp /opt/monitor/newLog /opt/OV/www/htdocs/PingLog/new.html
sleep 1
# mail -s "$IpAddress"Cantreach -c 我的email </dev/null
play -v 50 /opt/monitor/123.au
fi
esac
done <$PingConf
}
##########################################################
# execute the proc_main function every the specified time INTERVAL
while [ "1" -eq "1" ]
do

# execute the proc_main function
proc_main
# suspend execution for INTERVAL seconds
sleep $INTERVAL
done

上一篇:linux lsof命令详解及实例

栏    目:Shell

下一篇:详解Linux下读取位图的注意事项

本文标题:ping发现掉包报警的shell代码

本文地址:http://www.codeinn.net/misctech/60604.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有