in reply to opening files where name is a concatenation of variable
open (OUTHANDLE, ">$basedir . /output/file.txt") or die ;You're trying to open a file that doesn't exist.
There's no concatenating operator there, you clobber them all in one single string, the $basedir, the dot with spaces ( .), and /output/file.txt. Should you use $! variable, Perl would tell you what was wrong.perl -le 'print ">$basedir . /output/file.txt"' results . /output/file.txt
You actually want,my $basedir = "results"; my $filename = "$basedir . /output/file.txt"; open (OUTHANDLE, ">$filename") or die "can't open ($filename): $!\n"; can't open (result . /output/file.txt): No such file or directory
but this is not good although it probably works. Use suggestions from other replies.open (OUTHANDLE, ">$basedir" . "/output/file.txt") or die $!;
Open source softwares? Share and enjoy. Make profit from them if you can. Yet, share and enjoy!
In Section
Seekers of Perl Wisdom