So this is a subroutine in my code greps in a log file for the instance of the string "FAILURE: " which is saved in the $FAILURE_SEARCH variable. It then sets that to $info for later use. What I would like to know is, is it possible to also get the line number where grep finds the string? I've tried using $. (shown) but I'm pretty sure that's an incorrect usage of $. Any help is much appreciated!
my(@Log) = @_; my $info = join("", grep(/^$FAILURE_SEARCH /, @Log)); #greps in + log for FAILURE: and sets $info equal to the line containing FAILURE +: if found chomp $info; $info =~s/$FAILURE_SEARCH //ie; if($info ne ""){ print "INFO: $info \n"; print "This occurred on line $.\n"; } return $info;
In reply to Is this Possible? by hmeharward
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |