http://www.perlmonks.org?node_id=1082503

maestromani has asked for the wisdom of the Perl Monks concerning the following question:

Hi There, I got a log file which is as follow.
###################################################################
Name -> Name of the person,Path -> include \\path1\\path2\file.txt
#user: machinename\name
#log forward
#Date setup: 12/01/2010
# can be n number of line
Name -> Name of the person
###################################################################
writing a perl script which accept file name as input and match file name with the path and if matches I need to print the name in the last. log file will have n number of block like that and file name can match n number of time. how to proceed. Don';t like to use $flag, looking for best option. my piece of code looks like $file_name is command line parameter. while (<DATA_FILE>) { $str = $_ ; if ($str =~ /include/) { if ($str =~ /\b$file_name\b/) { $flag = "TRUE" ; } } if ($flag eq "TRUE") { if ($str =~ /View Name/) { print $str ; ($junk,$view_name) = split(\->\,$str) ; print $view_name ; $flag = "FALSE" ; } } #print "$_\n"; }