加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl编写ping脚本

发布时间:2020-12-15 21:02:57 所属栏目:大数据 来源:网络整理
导读:我的第一个用于生产环境的perl脚本,虽然不是很优秀,但也迈出了扎实的一步 :) 领导有任务,给一批IP列表,ping每一台机器,如果没有响应就发邮件通知,通知的邮件需要分开,不能通知一个列表,得一封一封的通知. 用到email::send模块,因为需要用到Gmail #!/usr/bin/

我的第一个用于生产环境的perl脚本,虽然不是很优秀,但也迈出了扎实的一步 :)
领导有任务,给一批IP列表,ping每一台机器,如果没有响应就发邮件通知,通知的邮件需要分开,不能通知一个列表,得一封一封的通知.
用到email::send模块,因为需要用到Gmail

#!/usr/bin/perl
use warnings;
use strict;
use Email::Send;
use Email::Send::Gmail;
use Email::Simple::Creator;
my @list = qw/
192.168.1.2

192.168.2.3

192.168.5.3?
/;
foreach my $re (@list){
??????? my $p = `ping $re -c 3`; icmp请求三次
??????? if($p=~/100% packet loss/){
??????????????? my $email = Email::Simple->create(
??????????????? header => [
??????????????? From??? => 'monitor@hongshu.com',
??????????????? To????? => 'monitor@hs.com',
??????????????? Subject => "$re 100% packet loss",
],
body => "$re the server is down!n",
?);
??????????????? my $sender = Email::Send->new(
??????????????? { mailer => 'Gmail',
??????????????? mailer_args => [
??????????????? username => 'monitor@hongshu.com',??????????????? password => 'xxx',??????????????? ] ??????????????? } ); ??????? eval { $sender->send($email) }; ??????? die "Error sending email: $@" if $@; ??????? } } ?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读