open(my $fh, "<", $file) or die("file open failed for '$file': $!");
####
X:\>perl -e "open($file) || die('file open failed');"
file open failed at -e line 1.
X:\>perl -e "open('xx') || die('file open failed');"
file open failed at -e line 1.
##
##
perl -e "$FILE='file_that_exists';open(FILE) || die('file open failed');"
##
##
X:\>perl -w tmp.pl
Name "main::IN" used only once: possible typo at tmp.pl line 5.
Couldn't open `/tmp/test123' at tmp.pl line 5.
X:\>type tmp.pl
use strict;
sub push_report {
my $idx = shift;
my $file= "/tmp/test123";
open(IN, $file) || die "Couldn't open `$file'";
}
##
##
use strict;
sub push_report {
my $idx = shift;
my $file= "/tmp/test123";
if (-e $file) {
warn "'$file' exists";
} else {
warn "'$file' does not exist";
};
if (-f $file) {
warn "'$file' exists as a file";
};
if (-d $file) {
warn "'$file' exists as a directory";
};
open(IN, $file) || die "Couldn't open `$file'";
}