#!/usr/local/bin/perl %mt = ( 'Jan', '01', 'Feb', '02', 'Mar', '03', 'Apr', '04', 'May', '05', 'Jun', '06', 'Jul', '07', 'Aug', '08', 'Sep', '09', 'Oct', '10', 'Nov', '11', 'Dec', '12', ); while(<>) { undef $flag; @t = split(/\t/); if($t[4] =~ /XXXXXXXXXXXXXXXXXXXXXXX/) { $flag = 'X'; } elsif($t[4] =~ /NNNNNNNNNNNNNNNNNNNNNNNNNN/) { $flag = 'N'; } if(defined($flag)) { @d = split(/[\[\]\:\/]/,$t[3]); # $date = "$d[3] $mt{$d[2]}$d[1] $d[4]"; $date = "$d[3] $mt{$d[2]}$d[1]"; $Na{"${date}"} ++; $Np{"${date}\t$flag"} ++; $Ns{"${date}\t$t[0]"} ++; $all++; } } foreach $date ( sort keys %Na ) { $wari = int($Na{$date} * 10000 / $all)/100; print "$date\t$Na{$date}\t$wari\n"; }