Menemukan file yang gagal perintahnya


26

Saya ingin secara rekursif menemukan semua file yang skrip yang menerima file sebagai argumen mengembalikan nilai bukan nol. Adakah yang tahu bagaimana melakukan ini menggunakan 'find' atau alat serupa?

Jawaban:


38

find's -exectindakan dapat digunakan untuk ini:

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

akan mencetak nama semua file yang yourscriptgagal.

-execdapat digunakan dengan cara ini untuk mengubah perintah eksternal yang sesuai menjadi findtes.

Anda dapat membatasi file yang diuji dengan menambahkan findtes sebelumnya -exec; misalnya, untuk membatasi kandidat ke file biasa, tambahkan -type f:

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

8
Ekuivalen, menggunakan -o(atau): find . -exec yourscript {} \; -o -print.
John Kugelman mendukung Monica
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.