#!/usr/bin/perl $FILEPATH="/abc/def/logs/servers"; @x=` | grep Name`; foreach $srv(@x){ @servers=split("=",$srv); $sname=@servers[1]; #print "$sname\n"; chomp $sname; $sname =~ s/^\s+//; if ( open($f1,"<$FILEPATH/$sname.log") ){ @lines = reverse <$f1>; $count=1; foreach $line(@lines){ @sdata=split(' ',$line); $count=$count+1; if ($count > 4 or @sdata[6] =~ /ETA/){ last; } } if ( @sdata[1] eq "outage_start"){ $servername=@sdata[0]; $outagesdate=@sdata[4]; $outagestime=@sdata[5]; $outageedate=@sdata[7]; $outageetime=@sdata[8]; print "$servername,$outagesdate,$outagestime,$outageedate,$outageetime\n"; } close $f1; } else{ warn "$sname missing\n"; } }