shell脚本自动ping主机

系统平台:Ubuntu14.04

1、检测脚本

脚本非常简单,通过判断ping通率来确定主机是否存活:

#!/bin/bash
#dir:/root/dshowing/
echo `date` > result.log

for i in `cat /root/dshowing/ip_check/IP.list`
do
    ping=`ping -c 1 $i | grep loss | awk '{print $(NF-4)}' | awk -F % '{print $1}'`
    if [ $ping -eq 100 ];then
        echo Fail ping $i >> result.log
    else
        echo Okok ping $i >> result.log
    fi
done

这里截取了结果字符串的倒数第五段

2、邮件发送

linux中默认使用自带的sendmail发送邮件,我们通过修改配置文件来调用外部SMTP服务器:

vim /etc/nail.rc

根据需要修改为以下格式:

set from=1234567890@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=1234567890
set smtp-auth-password=mypassword
set smtp-auth=login

(如果使用网易的126或163邮箱,非网易邮箱客户端需要使用三方授权码(去官网操作),同时配置文件中的密码使用授权码替代。)
mailx源码安装:

cd /root/dshowing
wget ftp://ftp.lt.freebsd.org/pub/FreeBSD/ports/distfiles/mailx-12.4.tar.bz2
tar xvf mailx-12.4.tar.bz2
mv mailx-12.4 mailx
cd mailx
make
make install UCBINSTALL=/usr/bin/install

邮件发送:

cat  /root/dshowing/result.log  |  /root/dshowing/mailx/mailx  -s  "VPS连通状态"  dshowing@qq.com

More info: Click

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容