in reply to Problem - Recursive file find using File::Find

Look at the docs, there's a $File::Find::prune variable that you can set if you want to skip subdirectories.

If you want to terminate processing altogether, throw an exception with die, and catch it on the outside with eval.