The script works fine if I use "./<script_name> data_file". But when I hardcode the name of data_file, it doesn't work. I am sure it has something to do with "while (<>)" statement. Can anyone please advice how to proceed when we have datafile name hardcoded, and it is read in an array and then.......???
I personally believe that you should get familiar with some basic Perl: then you wouldn't be asking such an embarassingly trivial question. Anyway, here's your fish - you either want
- an explicit open as in:
open my $fh, '<', $data_file or die "Can't open `$data_file': $!\n";
and then you would use while (<$fh>) instead of while (<>), or
- just populate @ARGV manually:
@ARGV='data_file';