Se o seu grep
suportar a leitura de linhas delimitadas por NUL (como o GNU grep
com -z
), você poderá usá-lo para testar se algo foi gerado por find
:
find /some/path -print0 | grep -qz .
Para enviar os dados para outro comando, você pode remover a opção -q
, permitindo que grep
passe os dados inalterados enquanto ainda relata um erro se nada passar:
find /some/path -print0 | grep -z . | ...
Especificamente, ${PIPESTATUS[1]}
no bash deve manter o status de saída de grep
.
Se o seu find
não suportar -print0
, use grep sem -z
e espere que as novas linhas nos nomes dos arquivos não causem problemas:
find ... | grep '^' | ...
Nesse caso, usar ^
em vez de .
pode ser mais seguro. Se a saída tiver novas linhas consecutivas, ^
irá passá-las, mas .
não.