Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: opening files where name is a concatenation of variable

by naikonta (Curate)
on Oct 10, 2007 at 18:28 UTC ( #644059=note: print w/replies, xml ) Need Help??

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.
perl -le 'print ">$basedir . /output/file.txt"' results . /output/file.txt
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.
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
You actually want,
open (OUTHANDLE, ">$basedir" . "/output/file.txt") or die $!;
but this is not good although it probably works. Use suggestions from other replies.

Open source softwares? Share and enjoy. Make profit from them if you can. Yet, share and enjoy!

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://644059]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (4)
As of 2016-10-25 00:16 GMT
Find Nodes?
    Voting Booth?
    How many different varieties (color, size, etc) of socks do you have in your sock drawer?

    Results (313 votes). Check out past polls.