ログファイルから特定のポート番号の履歴を削除します。

ログファイルから特定のポート番号の履歴を削除します。

ログファイルがありますが、ログファイルから特定のポートデータを削除したいと思います。

ポート番号はです22696
ロギングの例は次のとおりです。

  87.14.101.122   22696   2018-01-10 01:12:30 +0000       CONNECT gsp10-ssl.apple.com:443 HTTP/1.1        200     0       locationd/2236.0.11 CFNetwork/889.9 Darwin/17.2.0

ベストアンサー1

以下を試してくださいawk

awk '$2 !~ /^22696$/' file

このコマンドは、2番目のフィールド(デフォルトは$2区切り文字で空白)の/22696/開始位置(^)から終了位置()まで正確に一致する項目()を確認し、$結果(!)を反転します。

それとももっと簡単です(ありがとう。ローマ・ペレクレスト):

awk '$2!=22696' file

潜在的に大きなログファイルを安全に編集するには、次のコマンドセットを試してください。

mv file{,.backup} && awk '$2!=22696' file.backup > file

その後、ファイル権限の変更を使用する必要がありますchmod

おすすめ記事