sub main { findit(); # dostuff($_) for @dirlist; } sub findit { find(\&wanted, shift(@ARGV)); } sub wanted { return unless -d $_; # push(@dirlist,$File::Find::name); dostuff($File::Find::name); } sub dostuff { print "$_\n" } #### sub main { my @dirlist; find( sub { return unless -d $_; push(@dirlist,$File::Find::name); }, (shift @ARGV) ); dostuff($_) for @dirlist; } sub dostuff { print "$_\n"; }