Recherche de fichiers pour lesquels une commande échoue

26

Je voudrais trouver récursivement tous les fichiers pour lesquels un script qui accepte un fichier comme argument renvoie une valeur non nulle. Avez-vous une idée de comment faire cela en utilisant 'find' ou un outil similaire?

mitanyen
la source

Réponses:

38

findL' -execaction peut être utilisée pour cela:

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

affichera les noms de tous les fichiers qui yourscriptéchouent.

-execpeut être utilisé de cette manière pour transformer des commandes externes appropriées en findtests.

Vous pouvez limiter les fichiers testés en ajoutant des findtests auparavant -exec; par exemple, pour limiter les candidats aux dossiers normaux, ajoutez -type f:

find . -type f \! -exec yourscript {} \; -print
Stephen Kitt
la source
8
De manière équivalente, en utilisant -o(ou): find . -exec yourscript {} \; -o -print.
John Kugelman soutient Monica le