Ini adalah pertanyaan lama dan sudah dijawab tetapi saya pikir saya akan meletakkan opsi --binary-files=text di sini untuk siapa saja yang ingin menggunakannya. Opsi -I mengabaikan file biner tetapi jika Anda ingin grep memperlakukan file biner sebagai file teks, gunakan --binary-files=text seperti ini:
bash$ grep -i reset mediaLog*
Binary file mediaLog_dc1.txt matches
bash$ grep --binary-files=text -i reset mediaLog*
mediaLog_dc1.txt:2016-06-29 15:46:02,470 - Media [uploadChunk ,315] - ERROR - ('Connection aborted.', error(104, 'Connection reset by peer'))
mediaLog_dc1.txt:ConnectionError: ('Connection aborted.', error(104, 'Connection reset by peer'))
bash$
Ada tiga pilihan, yang dapat Anda gunakan. -I
adalah untuk mengecualikan file biner di grep. Lainnya untuk nomor baris dan nama file.
grep -I -n -H
-I -- process a binary file as if it did not contain matching data;
-n -- prefix each line of output with the 1-based line number within its input file
-H -- print the file name for each match
Jadi ini mungkin cara untuk menjalankan grep:
grep -InH your-word *
Saat menggunakan printf bagaimana cara keluar dari karakter khusus dalam skrip shell?
Hapus duplikat Git fork di server