Dies ist eine alte Frage und sie wurde beantwortet, aber ich dachte, ich würde die Option --binary-files=text hier für jeden einfügen, der sie verwenden möchte. Die Option -I ignoriert die Binärdatei, aber wenn Sie möchten, dass grep die Binärdatei als Textdatei behandelt, verwenden Sie --binary-files=text wie folgt:
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$
Es gibt drei Optionen, die Sie verwenden können. -I
ist das Ausschließen von Binärdateien in grep. Andere sind für Zeilennummern und Dateinamen.
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
Das könnte also eine Möglichkeit sein, grep:
auszuführengrep -InH your-word *