Пошук файлів, для яких команда не працює


26

Я хотів би рекурсивно знайти всі файли, для яких сценарій, який приймає файл як аргумент, повертає ненульове значення. Будь-яка ідея, як це зробити, використовуючи "знайти" або подібний інструмент?

Відповіді:


38

find«S -execдії можуть бути використані для цього:

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

буде надрукувати назви всіх файлів, для яких yourscriptне вдалося.

-execможна таким чином перетворити відповідні зовнішні команди в findтести.

Ви можете обмежити тестовані файли, додавши findтести раніше -exec; наприклад, щоб обмежити кандидатів звичайними файлами, додайте -type f:

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

8
Еквівалентно, використовуючи -o(або): find . -exec yourscript {} \; -o -print.
Джон Кугельман підтримує Моніку
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.