in reply to Re^2: Doubt regarding parsing
in thread Doubt regarding parsing

The double \\ is always OK (although in single quotes it is often redundant). That is not your problem now, and maybe never was. If you are passing a file name on the command line then the default file name is irrelevant. As a sanity check you should:

die "Can't find $filename\n" if ! -f $filename;

before the parse line. Note that -f tests for the existence of a file so the die will happen if the file is missing, even if there is a directory of that name.

Most likely you are passing a file name for a file that exists in a different directory than is the current directory when you run the script. The die line will detect and report that.

Note that strictures (use strict; use warnings;) pick up bad escape sequences and would often catch your initial error (although not \E). You should always use strictures.

True laziness is hard work