C:\EITV10CM\base\repair\Companion_Repair\File2File\F2F.COM ... is OK. C:\EITV10CM\base\repair\Companion_Repair\File2SelfExt\F2SEXT.CMP ... i +s OK. C:\EITV10CM\base\repair\Companion_Repair\File2SelfExt\F2SEXT.COM ... F +ound the CMPAN/File2SelfExt virus !!! The virus has been removed from the file. Checking for another virus in the file ... C:\EITV10CM\base\repair\Companion_Repair\File2SelfExt\F2SEXT.COM ... i +s OK #### #!/usr/bin/perl use strict; use warnings; #Program to read the command line report file; and extract the virus detection name for a file. my $cmdrep = "d:/eitv10cm_cln.rep"; my $fname = "D:\\EITV10CM\\base\\repair\\Companion_Repair\\File2SelfExt\\F2SEXT.COM"; my ($found,$virusname,$flag,$i); (@dirtemp) = split /:/,$fname shift @dirtemp; foreach $itemp ( @dirtemp ) { $filepath .= $itemp; } open FH, "$cmdrep" or die "Cannot open $cmdrep. \n"; while () { chomp; next if $_ !~ /^\Q$filepath\E/i; chomp($_); /\s\.{3}\s(.*)/; $found = $1; if ($found eq "is OK.") { $virusname = "OK"; print "The virus detection name is $virusname\n"; last; } if ($found =~ /^Found: (.*?) NOT a virus[.]/) { $virusname = $1; print "The virus detection name is $virusname\n"; last; } elsif ($found =~ /^Found the (.*?) (virus|trojan) !!!/) { $virusname = $1; print "The virus detection names is $virusname\n"; last; } elsif ($found =~ /^Found potentially unwanted program (.*?)[.]/) { $virusname = $1; print "PuPs $virusname \n"; last; } elsif ($found =~ /Found (virus or variant|application) (.*?)( !!!|[.])/) { $virusname = $2; print "Virus or variant $virusname \n \n"; $flag =1; last; } } close(FH); }