Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: Recursive directories

by rustic (Scribe)
on Apr 02, 2014 at 13:53 UTC ( #1080777=note: print w/ replies, xml ) Need Help??


in reply to Recursive directories

Thanks for the responses but I guess there's a bit you still miss.
I agree on the fact the make_path() will take one more argument though, my concern is why I do get different results if I do chdir and I when I don't after this line ?
And, of course I have the $path to be created defined somewhere before.
The reason I have called the subroutine as a class method was in first place due to the error:
Undefined subroutine &main::make_path called at when I go with:

use File::Path; make_path($path);
To fix this I had to either:
use File::Path 'make_path';
or, to call it as a class method.


Comment on Re: Recursive directories
Select or Download Code
Re^2: Recursive directories
by McA (Curate) on Apr 02, 2014 at 14:22 UTC

    Sorry, but I think you missed something:

    a) You must NOT use File::Path->make_path if you don't want to create directories named 'File::Path'. You can use

    use File::Path qw(make_path); make_path($dir);

    or

    use File::Path; File::Path::make_path($dir);

    b) I can't see the reason for your chdir-problem from the three lines of code given. So you missed to provide some further context. At least you have to explain what you expected and what you got.

    Regards
    McA

      I wouldn't still agree on the point a) I can run it the way I have written it without having created any "File::Path" directory. Something like that will work without problem:
      for (@list) { File::Path->make_path($path); }
      The problem strikes when I have to chdir into that directory to do something there, like create a file but that's not even necessary. This piece of code creates me the mentioned "File::Path" subdirectory compared to the above :
      for (@list) { File::Path->make_path($path); chdir $path or die "Cannot chdir: $!"; }

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (4)
As of 2014-09-21 15:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (172 votes), past polls