Linux: gunakan find untuk menemukan file teks?


4

Apakah ada cara untuk menentukan findbahwa saya hanya ingin file teks (dan bukan file biner)? Grepmemiliki opsi untuk mengecualikan file biner, jadi saya pikir findmungkin memiliki fitur serupa, tetapi saya tidak dapat menemukannya.

Jawaban:


6

Itu karena grepmelihat isi file.

find . -exec sh -c "file -b --mime-type {} | grep -q '^text/'" \; -print

Di Ubuntu, ini adalahfind . -exec sh -c "file -b --mime {} | grep -q '^text/'" \; -print
icc97

4

finddapat menemukan file dengan metadata mereka, tetapi tidak memeriksa konten. Namun, Anda dapat memasangkannya dengan file:

find .git -type f -exec file -iN0 {} + |
awk -F '\0' '$2 ~ /^: text\// {print $1}'

(Anda dapat menghapus | awk ...bagian itu jika Anda juga menginginkan informasi yang lebih terperinci.)

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.