sub wanted { print "$File::Find::dir/$hold\n" if /\.(\w+)$/ and exists $exts{ lc $1 }; } #### my %already_seen; sub wanted { print "$File::Find::dir/$hold\n" if /\.(\w+)$/ and exists $exts{ lc $1 } and not $already_seen{ $File::Find::dir }++; }