perl ping檢測功能腳本代碼
更新時間:2013年02月09日 22:58:27 作者:
領導有任務,給一批IP列表,ping每一臺機器,如果沒有響應就發(fā)郵件通知,通知的郵件需要分開,不能通知一個列表,得一封一封的通知
我的第一個用于生產(chǎn)環(huán)境的perl腳本,雖然不是很優(yōu)秀,但也邁出了扎實的一步 :)
領導有任務,給一批IP列表,ping每一臺機器,如果沒有響應就發(fā)郵件通知,通知的郵件需要分開,不能通知一個列表,得一封一封的通知.
用到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!\n",
);
my $sender = Email::Send->new(
{ mailer => 'Gmail',
mailer_args => [
username => 'monitor@a.com',
password => 'xxx',
]
}
);
eval { $sender->send($email) };
die "Error sending email: $@" if $@;
}
}
相關文章
Perl使用Tesseract-OCR實現(xiàn)驗證碼識別教程
這篇文章主要介紹了Perl使用Tesseract-OCR實現(xiàn)驗證碼識別教程,Tesseract-OCR是一個開源圖形識別引擎,需要的朋友可以參考下2014-06-06