同じ項目を複数行含む大容量ログファイルがあります。これを「冗長情報」と呼びます。たとえば、ログの一部は次のとおりです。
[Timestamp] repeat-info
[Timestamp] repeat-info
[Timestamp] Log information 1
[Timestamp] Log information 2
[Timestamp] repeat-info
[Timestamp] Log information 3
[Timestamp] repeat-info
ログファイルの情報を出力して重複した情報を除外するコマンドはありますか?more file.log
私が見たいものを見つけるために、重複した情報をすべて使用して選択する必要がある場合は面倒です。
マニュアルページを読んでいますが、sed
私のawk
問題の検索でこれらのコンテンツが表示されていますが、必要なものを満たす決定的なものは見つかりませんでした。
古い質問を検索して発見しました。この問題これは私と関係があります。
スクリプトを作成せずに単一のコマンドまたは2つのパイプを一緒に接続してこれを行う方法を探しています。
どんな助けでも大変感謝します!
答え1
これを行う方法はいくつかあります。最高は次のとおりですgrep
。
grep -v 'repeat-info' file.log
他の方法:
sed '/repeat-info/d' file.log
sed -n '/repeat-info/!p' file.log
awk '!/repeat-info/' file.log