ログファイルをgrepすると、grepがファイルの末尾に近い一致を見つけることができないことがよくあります。サンプルファイル
たとえば、次のようにします。
grep -n "demodulator_process" 2018_12_22_13_04_adfags-modem.log | less
ファイルの最大2962行までを表示し、その文字列がファイルの下部に表示されます。
走る
grep -n "Finished" 2018_12_22_13_04_adfags-modem.log
ファイルの最後の数行をキャプチャし、何も返さないでください。
この動作の原因を知っている人はいますか?
grepバージョンを使用しています
--> grep --version
grep (GNU grep) 3.1
ありがとうございます。
ベストアンサー1
grep -a
働くことができる:
男のgrepから:
-a、--textは--binary-files = textと同じです。
例えばgrep -a -n "demodulator_process" 2018_12_22_13_04_adfags-modem.log
あるいは、ファイルがバイナリと見なされないようにする前に、ヌル文字を削除することもできます。 (これはファイルを変更せずに検索中の内容のみを修正します。)
cat 2018_12_22_13_04_adfags-modem.log | tr -d '\000' | grep "demodulator_process"