in reply to Re: Unix 'grep -v' equivalency in Perl (was: Perl Regex Question)
in thread Unix 'grep -v' equivalency in Perl (was: Perl Regex Question)

Yet another brief addition: the message $! tells you the cause of the addition, but not the source. Zaxo already told you that leaving that newline out makes die tell the terminal which line of code generated that error.

However, that's not immediately informative. The command probably interpretets a variable to generate the syscall, so in general it's a good idea to provide that information :

open( INPUT, $filename ) or die "Could not open $filename: $!"; # or rename( $old, $new ) or die "Could not rename $old to $new: $!";

As a third step, you can use Carp to print out the chain of callers. This is useful when your code is distributed over more than one file.

  • Comment on Re:{2} Unix 'grep -v' equivalency in Perl (was: Perl Regex Question)
  • Download Code