Como encontrar arquivos que contenham uma string em seu conteúdo OU no caminho?

Como encontrar arquivos que contenham uma string em seu conteúdo OU no caminho?

Find e grep não funcionam porque preciso criar uma lista de arquivos que satisfaçam QUALQUER requisito, não ambos. Presumo que isso exija mais do que uma linha. Alguma sugestão?

Responder1

É possível com o seguinte comando:

comm  -3 <(find path -name '*string*' | sort) \
         <( grep -r 'string' path | sed s=^=./= | sort) 

Talvez seja necessário alterar a sedparte para tornar os caminhos relatados finde grepcompatíveis. A -3opção para commsuprime a impressão dos arquivos que aparecem em ambas as listas.

informação relacionada