Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: Using File::Find from a function.

by vinoth.ree (Prior)
on Mar 19, 2013 at 06:23 UTC ( #1024213=note: print w/ replies, xml ) Need Help??


in reply to Using File::Find from a function.

From CPAN doc

find

find(\&wanted, @directories); find(\%options, @directories);

find() does a depth-first search over the given @directories in the order they are given. For each file or directory found, it calls the &wanted subroutine.Additionally, for each directory found, it will chdir() into that directory and continue the search, invoking the &wanted function on each file or subdirectory in the directory.

Update:

You can do this way.

my $file='foo'; my directory='a'; + sub check_existance { + if ( -e $_ && $_ eq $file ) { + print "Found file '$_' in directory '$File::Find::dir'\n"; + } + } find( \&check_existance, $directory );

The check_existance 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.

The above variables have all been localized and may be changed without affecting data outside of the check_existance function.

Beginners guide to File::Find

All is well


Comment on Re: Using File::Find from a function.
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (11)
As of 2015-07-03 07:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (48 votes), past polls