发件队列查询perl(用于生产环境)

前端之家收集整理的这篇文章主要介绍了发件队列查询perl(用于生产环境)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
#!/usr/bin/perl
open FILE,"mailq|";
#open FILE,"1\.txt" or die "can not open file!$!";
%From;
%To;
my $i=1;
my $tuiuser=0;
my $iftuixin=0;
while(<FILE>)
{
  if(/.* (\w+.*@\w+.*\..*)/)
  { $fromuser=$1;
    $From{$fromuser}+=1;
    # print $fromuser;
     }
  if($tuiuser==1)
  {
    if(/.*?(\w+@.*)/)
    {
      s/^\s+\s+$//;
      $To{$_}+=1;
      $tuiuser=0;
    }
    if($iftuixin==1)
    {
      s/^\s+\s+$//;
      $To{$_}+=1;
      $iftuixin=0;
      $tuiuser=0;
    }
    unless( /.*@.*/)
    {
      $iftuixin=1;
    }
   
  }
  if(/MAILER-DAEMON/)
  { $tuiuser=1;
  }
  } print "----- mail user-----\n"; @frompai=sort{ $From{$b} <=> $From{$a} or $a cmp $b } keys %From; foreach (@frompai) { $i++;    print "$_\:";   print "$From{$_}\n";   last if $i==16;       } $i=0; print "----- MAILER-DAEMON-----\n"; @topai=sort { $To{$b} <=> $To{$a} or $a cmp $b} keys %To; foreach (@topai) { $i++;   if(/(\w+@\w+)/)   {   print "$1\:";   print "$To{$_}\n";   }   last if $i==16; }

猜你在找的Perl相关文章