
我有一個日誌文件,其輸出如下:
[+] [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'[][]'
將輸入欄位分隔符號設為[
or]
{print $4}
列印第四個字段
使用sed
,假設輸入檔具有一致的模式,如範例所示
$ sed 's/.*\[//; s/].*//' ip.txt
1.1.1.1
s/.*\[//
刪除從行首到[
行尾的內容s/].*//
從如此修改的行中,刪除從]
行首到行尾的所有內容