2番目に表示されるコンテンツを出力します。

2番目に表示されるコンテンツを出力します。

次の出力を含むログファイルがあります。

[+] [1.1.1.1] LOG HERE

ログからIPを抽出し、IPのみをリストする「きれいな」ファイルに送信する方法を知りたいです。

ベストアンサー1

awkでテストしましたが、GNU Awk 4.1.3他のバージョンでは動作しないかどうかはわかりません。

$ cat ip.txt 
[+] [1.1.1.1] LOG HERE

$ awk -F'[][]' '{print $4}' ip.txt 
1.1.1.1
  • -F'[][]'入力フィールドの区切り記号を[またはに設定]
  • {print $4}4番目のフィールドを印刷します。


sed例に示すように、入力ファイルに一貫したパターンがあるとします。

$ sed 's/.*\[//; s/].*//' ip.txt 
1.1.1.1
  • s/.*\[//行の先頭から最後まで[コンテンツを削除する
  • s/].*//このように変更された行から行]の先頭から最後まですべて削除します。

おすすめ記事