Hey, The man page for find(1) does not mention when the -exec primary evaluates to true.
-exec utility ... ; evaluates to true when the utility exits with a zero exit status, while -exec utility ... {} + always evaluates to true. I have a patch below with my attempt at a description. I tried to make the wording consistent with other parts of the man page. Cheers, Kris Katterjohn Index: find.1 =================================================================== RCS file: /cvs/src/usr.bin/find/find.1,v retrieving revision 1.93 diff -u -p -r1.93 find.1 --- find.1 3 Jan 2017 22:19:31 -0000 1.93 +++ find.1 30 Jul 2018 19:08:16 -0000 @@ -222,6 +222,10 @@ or a plus sign If terminated by a semicolon, the .Ar utility is executed once per path. +This form of the primary evaluates to true if the invocation +of +.Ar utility +exits with a zero exit status. If the string .Qq {} appears anywhere in the utility name or the @@ -233,6 +237,7 @@ primary is evaluated are aggregated into .Ar utility will be invoked once per set, similar to .Xr xargs 1 . +This form of the primary always evaluates to true. If any invocation exits with a non-zero exit status, then .Nm will eventually do so as well, but this does not cause