#!/usr/bin/perl
use strict;
use Net::SMTP;
my $max=0.8;
my @msg;
use strict;
use Net::SMTP;
my $max=0.8;
my @msg;
open(FH,"df -P|");
foreach my $data (<FH>){
if(($data=~/^\//)and!($data=~/\/mnt/)){
my(@arr)=split " ",$data;
if($arr[2]/$arr[1]>$max){
push(@msg,"$arr[5] $arr[4]" );
}
}
}
foreach my $data (<FH>){
if(($data=~/^\//)and!($data=~/\/mnt/)){
my(@arr)=split " ",$data;
if($arr[2]/$arr[1]>$max){
push(@msg,"$arr[5] $arr[4]" );
}
}
}
if(defined(@msg)){
foreach my $cont (@msg){
my $mailhost='127.0.0.1';
my $mailfrom='[email]lanlan@139.com[/email]';
my $mailto='[email]zhengjun.zhu@163.com[/email]';
my $subject="Disk Warn";
my $smtp = Net::SMTP->new($mailhost,Hello =>"localhost",Timeout => 30,Debug => 0,);
$smtp->mail($mailfrom);
$smtp->to($mailto);
$smtp->data();
$smtp->datasend("To: $mailto\n");
$smtp->datasend("From: $mailfrom\n");
$smtp->datasend("Subject: $subject\n");
$smtp->datasend("\n");
$smtp->datasend("磁盘警告:$cont\n");
$smtp->dataend();
$smtp->quit;
}
}
foreach my $cont (@msg){
my $mailhost='127.0.0.1';
my $mailfrom='[email]lanlan@139.com[/email]';
my $mailto='[email]zhengjun.zhu@163.com[/email]';
my $subject="Disk Warn";
my $smtp = Net::SMTP->new($mailhost,Hello =>"localhost",Timeout => 30,Debug => 0,);
$smtp->mail($mailfrom);
$smtp->to($mailto);
$smtp->data();
$smtp->datasend("To: $mailto\n");
$smtp->datasend("From: $mailfrom\n");
$smtp->datasend("Subject: $subject\n");
$smtp->datasend("\n");
$smtp->datasend("磁盘警告:$cont\n");
$smtp->dataend();
$smtp->quit;
}
}
本文转自hahazhu0634 51CTO博客,原文链接:http://blog.51cto.com/5ydycm/116684,如需转载请自行联系原作者