note
edoc
<p>It appears that find_function($dirname) is actually called before (or after, depending on your options) the "wanted" function is called so you need to filter directories out in find_function.<p>
<p>If you do filter our directory names in the "preprocess" function then you'll prevent File::Find from recursing into those directories.</p>
<p><b>Update: d'oh! mixed up the function names..</b></p>
<code>
#!/usr/bin/perl -w
use strict;
use Cwd;
use File::Find;
my $filespec = qr/\.(?:txt|pl)$/;
my $dir = $ARGV[0] || getcwd();
find( { wanted => \&find_function, preprocess => \&globber }, $dir );
sub find_function {
return if (-d $File::Find::name);
print $File::Find::name.$/;
}
sub globber{
my @files;
foreach(@_){
push(@files, $_) if (/$filespec/ || (-d $_));
}
return @files;
}
</code>
<!-- Node text goes above. Div tags should contain sig only -->
<div class="pmsig"><div class="pmsig-255317">
<p>cheers,</p>
<p>J</p>
</div></div>
427850
427850