Os operadores -and
/ -a
são o operador AND lógico. Eles não precisam ser especificados, pois estão implícitos na justaposição de duas expressões.
E sim, não será possível imprimir afile
enquanto você estiver usando find . -name afile -o -name bfile -a -print
, pois o operador AND tem uma precedência maior do que OU operador -or
/ %código%. Se você quiser que -o
seja impresso, você tem duas opções:
Primeira Opção:
Como @malo mencionado, executando afile
você pode ter o find . \( -name afile -o -name bfile \) -a -print
impresso, pois os parênteses têm a maior precedência nos comandos Localizar nas versões GNU e BSD.
Segunda Opção:
Por não passar a opção afile
. Portanto, será -print
e a razão é que não há nada com precedência maior que find . -name afile -o -name bfile
.