• 【转】perl ping检测功能脚本代码


    我的第一个用于生产环境的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/ 
    1.1.1.1 
    2.2.2.2 
    3.3.3.3 
    /; 
    foreach my $re (@list){ 
            my $p = `ping $re -c 3`; 
            if($p=~/100% packet loss/){ 
                    my $email = Email::Simple->create( 
                    header => [ 
                    From    => 'monitor@a.com', 
                    To      => 'monitor@b.com', 
                    Subject => "$re 100% packet loss", 
    ], 
    body => "$re the server is down! ", 
     ); 
                    my $sender = Email::Send->new( 
                    { mailer => 'Gmail', 
                    mailer_args => [ 
                    username => 'monitor@a.com', 
                    password => 'xxx', 
                    ] 
                    } 
    ); 
            eval { $sender->send($email) }; 
            die "Error sending email: $@" if $@; 
            } 
    }

    原文链接:http://www.jb51.net/article/33965.htm

  • 相关阅读:
    如何激活myecilpse 10
    Myecilpse 10里安装配置maven
    spring mvc 模糊查询防注入
    javascript 取整,取余数
    spring3-mvc实例-信息转换
    CSS中怎么让DIV居中
    git
    浏览器窗口的大小
    如何限制文本框中的字数
    jquery如何设置控件位置
  • 原文地址:https://www.cnblogs.com/schowen/p/3384591.html
Copyright © 2020-2023  润新知