Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re: File::Find in a loop

by Laurent_R (Vicar)
on Apr 28, 2013 at 21:05 UTC ( #1031111=note: print w/ replies, xml ) Need Help??


in reply to File::Find in a loop

I haven't tested it, but I guess you could simply pass a parameter to your wanted call-back function:

my @dir = ( qw( N:/TMP N:/TMP_2 )); for my $dir ( @dir) { find( \&wanted ($dir), $dir ); }

And modify the wanted function as follows:

sub wanted { my $dir = shift; print "[$dir] $File::Find::dir $File::Find::name\n"; }


Comment on Re: File::Find in a loop
Select or Download Code
Re^2: File::Find in a loop
by 2teez (Priest) on Apr 28, 2013 at 21:45 UTC

    find( \&wanted ($dir), $dir );
    No! I don't think so.

    The File::Find documentation makes this clear saying thus:

    wanted function takes no arguments but rather does its work through a collection of variables.
    $File::Find::dir is the current directory name,
    $_ is the current filename within that directory
    $File::Find::name is the complete pathname to the file.
    These variables have all been localized and may be changed without affecting data outside of the wanted function.

      Yes, you are right, what I suggested does not work. It has been a long time since I last looked at the File::Find documentation, I did not remember at all about that.

      Sorry about my mistake and thank you, 2teez, for pointing out this error.

      Having said that, this is (as far as I know) the first time that one of my posts had a negative reputation (-1 as of this reading). OK, well, my mistake, someone down voted me, I should know better, fair enough. I should add that I am not particularly concerned about that (and I only partly understand the reputation thing). But I did not think that an error in a post where I said that this just *might* be a solution and in which I very specifically said that this was untested deserved a down voting. But, of course, someone out there thinks that none should talk unless she or he knows everything about every single module. Oh, well...

        But, of course, someone out there thinks that none should talk unless she or he knows everything about every single module.

        No. Just those you offer help for.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (9)
As of 2014-08-21 21:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (143 votes), past polls