ping发现掉包报警的shell代码

 更新时间:2013年01月23日 18:04:49   作者:  
一般用来判断服务器是否稳定,加入crontab中让其10分钟跑一次,需要的朋友可以参考下
复制代码 代码如下:

#!/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下通过命令行获取gmail的新邮件

    linux下通过命令行获取gmail的新邮件

    在这篇文章中,我将为你展示 Linux 命令行的另一个漂亮干练的使用案例:访问 Google 的 Gmail 服务,有需要的小伙伴可以参考下。
    2015-05-05
  • shell 循环命令详解

    shell 循环命令详解

    这篇文章给大家介绍了shell 循环命令的相关知识,包括for命令使用,c 风格 for 命令及while 命令等等,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2022-10-10
  • 很实用的Linux 系统运维常用命令及常识(超实用)

    很实用的Linux 系统运维常用命令及常识(超实用)

    作为Linux运维,需要了解Linux操作系统的基本使用和管理知识,下面脚本之家小编给大家介绍下Linux运维需要掌握的命令,想成为Linux运维的朋友可以来学习一下
    2016-10-10
  • shell脚本实现mysql数据库双机定时备份的方法

    shell脚本实现mysql数据库双机定时备份的方法

    最近有个需求,要求实现对某个数据库进行双机备份,每天凌晨备份一次,要求主机器只保留最近十五天的记录,我们决定用shell脚本加定时任务的方式来实现这个需求,接下来通过本文给大家介绍shell脚本实现mysql数据库双机定时备份的方法,感兴趣的朋友一起看看吧
    2022-07-07
  • Linux 中 tar 命令详解

    Linux 中 tar 命令详解

    这篇文章主要,给大家带来的是 Linux 命令系列,要介绍的是一个常用且强大的命令:tar,文中代码示例介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • Linux sed工具的使用及工作原理

    Linux sed工具的使用及工作原理

    这篇文章主要介绍了Linux sed工具的使用,主要包括sed的基本用法及sed编辑器的高级用法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Ubuntu服务器配置apache2.4的限速功能shell脚本分享

    Ubuntu服务器配置apache2.4的限速功能shell脚本分享

    这篇文章主要介绍了Ubuntu服务器配置apache2.4的限速功能shell脚本分享,本文直接给出脚本实现代码,代码相关原理都写在了注释里,需要的朋友可以参考下
    2015-03-03
  • linux type命令用法实战教程

    linux type命令用法实战教程

    type命令用来显示指定命令的类型,它是Linux系统的一种自省机制,知道了是那种类型,我们就可以针对性的获取帮助,这篇文章主要介绍了linux type命令用法实战教程,需要的朋友可以参考下
    2023-05-05
  • shell命令while循环中使用sleep命令代码示例

    shell命令while循环中使用sleep命令代码示例

    这篇文章主要介绍了shell命令while循环中使用sleep命令代码示例,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02
  • Impala-shell命令参数的实现

    Impala-shell命令参数的实现

    这篇文章主要介绍了Impala-shell命令参数的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12

最新评论