Localizando arquivos para os quais um comando falha


26

Gostaria de encontrar recursivamente todos os arquivos para os quais um script que aceita um arquivo como argumento retorna um valor diferente de zero. Alguma idéia de como fazer isso usando 'find' ou uma ferramenta semelhante?

Respostas:


38

findA -execação de pode ser usada para isso:

find . \! -exec yourscript {} \; -print

imprimirá os nomes de todos os arquivos para os quais yourscriptfalhar.

-execpode ser usado dessa maneira para transformar comandos externos apropriados em findtestes.

Você pode limitar os arquivos que são testados adicionando findtestes antes -exec; por exemplo, para limitar os candidatos a arquivos regulares, adicione -type f:

find . -type f \! -exec yourscript {} \; -print

8
De forma equivalente, usando -o(ou): find . -exec yourscript {} \; -o -print.
John Kugelman apoia Monica em
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.