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

0

Find e grep não funcionam afaik porque eu preciso criar uma lista de arquivos que satisfaçam os requisitos, não ambos. Eu suponho que isso requer mais do que um one-liner. Alguma sugestão?

    
por cdonner 04.03.2014 / 17:18

1 resposta

1

É possível com o seguinte comando:

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

Pode ser necessário alterar a sed parte para tornar os caminhos relatados por find e grep compatíveis. A opção -3 para comm suprime a impressão dos arquivos que aparecem nas duas listas.

    
por 04.03.2014 / 17:39