ログが多く、各ログを個別に表示する代わりに実行したいのですが、cat cluster-2010*.log | grep error
問題は、目的の結果を返しても、前のコマンドで示されたエラーを含む.logファイルがわからないことです。 。
この問題をどのように解決できますか?
答え1
grep
コンテンツを提供する代わりにファイル名を指定すると、それ自体は次のように通知されます。
grep error cluster-2010*.log
答え2
これは猫の無駄な使用。以下を実行してください。
grep error cluster-2010*.log
次のような出力が表示されます。
bil@daemon:foo %>grep error cluster-2010*.log
cluster-20105.log:error
cluster-20107.log:error
答え3
たとえば、auth.log エラーが発生して何百行も出力される場合など、多くの出力が必要ない場合は、次のようになります。
grep -l error cluster-2010*.log
結果がfalse(値を含まない)の場合、何も印刷されません。値が含まれる場合、ファイル名は印刷されません。
探している単語の行番号を見つけるには、次のようにします。
grep -n error cluster-2010*.log