De acordo com a documentação ,
Please note that
-a
when specified implicitly (for example by two tests appearing without an explicit operator between them) or explicitly has higher precedence than-o
. This means thatfind . -name afile -o -name bfile -print
will never printafile
.
Então, basicamente, você pode imaginar find
em torno de duas expressões "anded" com parênteses por padrão. Seu
find . -type f -name apple\* -o -name orange\*
é interpretado como
find . \( -type f -name apple\* \) -o -name orange\*