Anzahl der Viren auswerten

Aus Wiki.csoft.at

Nachfolgendes Perl-Script wertet die /var/log/kav/smtpscanner.log aus aus und gibt eine Liste mit der Anzahl der Viren und deren Gesamtsumme zurück

#!/usr/bin/perl
# Kaspersky E-Mail gateway protection: smtpscanner.log auswerten
$file=shift;
if (!$file) {
  print "Rangliste der Viren anzeigen.\n";
  print "smtpscanner.log als Parameter angeben!\n";
  exit 1;
}
open (INPUT, $file) or die "$file not found.\n";
  while (<INPUT>){
    chop $_;
    ($x,$virus)=split(/detected=</,$_);
    $virus=~s/>//g;
    if ($virus) {
      push(@uniq, $virus) unless $seen{$virus}++;
      $z++;
    }
  }
close INPUT;
foreach $virus (sort {$seen{$b}<=>$seen{$a}} keys %seen) {
  print $seen{$virus},"\t",$virus,"\n";
}
print "$z\tTOTAL\n";
exit 0;

Siehe auch