Is there a way to force the find command to stop right after finding the first match?
How to stop the find command after first match?
find;command
With GNU or FreeBSD find, you can use the -quit predicate:find . ... -print -quitThe NetBSD find equivalent:find . ... -print -exitIf all you do is printing the name, and assuming the filenames don't contain newline characters, you could do:find . ... -print | head -n 1That will not stop find after the first match, but possibly, depending on timing and buffering upon the second match or (much) later. Basically, find will be terminated with a SIGPIPE when it tries to output something while head is already gone because it has already read and displayed the first line of input.If you're doing more than printing the paths of the found files, you could try this approach:find . ... -exec sh -c 'printf %s\n $1; kill $PPID' sh {} \;(replace printf with whatever you would be doing with that file).That has the side effect of find returning an exit status reflecting the fact that it was killed though.Actually, using the SIGPIPE signal instead of SIGTERM (kill -s PIPE instead of kill) will cause some shells to be more silent about that death (but would still return a non-zero exit status).