Gunakan:
find /dir/to/search -type f | xargs file | grep text
find
akan memberi Anda daftar file.
xargs file
akan menjalankan file
perintah pada setiap baris dari input yang disalurkan.
temukan dan berkas apakah temanmu di sini:
find /dir/to/search -type f -exec sh -c 'file -b {} | grep text &>/dev/null' \; -print
Ini akan menemukan file apa pun (CATATAN:tidak akan menemukan soket direktori symlink, dll., hanya file biasa) di /dir/to/search dan jalankan sh -c 'file -b {} | grep teks &>/dev/null'; yang melihat jenis file dan mencari teks dalam deskripsi. Jika ini mengembalikan true (yaitu, teks ada di baris) maka nama file akan dicetak.
CATATAN:menggunakan flag -b ke file berarti nama file tidak dicetak dan oleh karena itu tidak dapat membuat masalah apa pun dengan grep . Misalnya, tanpa -b
tandai gettext file biner akan keliru dideteksi sebagai file teks.
Misalnya,
[email protected]# find /bin -exec sh -c 'file -b {} | grep text &>/dev/null' \; -print
/bin/gunzip
/bin/svnshell.sh
/bin/unicode_stop
/bin/unicode_start
/bin/zcat
/bin/redhat_lsb_init
[email protected]# find /bin -type f -name *text*
/bin/gettext
Jika Anda ingin melihat file terkompresi, gunakan --uncompress
bendera ke file. Untuk informasi lebih lanjut dan penandaan ke file, lihat file man.