my $dir = '/some_dir'; find (\&process, $dir); sub process { my $dir = $File::Find::dir; if ($dir =~ /^\/some_dir\/sub_dir/){ print "skipping $dir\n"; $File::Find::prune = 1; return; } print "$dir/$_\n"; }