Linux中awk統計ip訪問次數

2021-08-15 07:49:06 字數 653 閱讀 7888

現在有乙個檔案,資料量大概在200多萬條記錄,想用shell的awk做統計,檔案的格式如下

#關鍵字#url#ip位址#

test|123|1

test|123|1

test|123|2

test2|12|1

test2|123|1

test2|123|2

現在想要統計的結果是:檢視同乙個關鍵字和url總的訪問的次數,以及多少個不同的ip,輸出到乙個檔案中

sql的實現就很簡單 select keyword ,url ,count(1),count(distinct ip) group by keyword ,url ,但是資料量太大,報表跑不出來,想在shell下面實現,但是我shell不精通,不知道如何快捷的實現,尤其是那個distinct的那個

理想的結果是:

#關鍵字#url#不同ip#搜尋次數

test      123     2       3

test2    123    1        2

test2     12     1        1

awk -f"|" '(b[$1" "$2" "$3]==1)end' file

test2 123 2 2

test2 12 1 1

test 123 2 3

awk檢視與統計nginx訪問日誌

切割日誌 查詢7月16日訪問log匯出到17.log檔案中 cat web access.log egrep 17 jul 2017 sed n 00 00 00 23 59 59 p tmp 16.log 檢視訪問量前10的ip awk web access.log sort uniq c sor...

Nginx 日誌檔案 訪問IP統計

nginx訪問日誌檔案內容如下 python requests 2.4.3 cpython 2.7.9 linux 3.16.0 4 amd64 如何通過命令列統計和排列訪問日誌裡的ip數 linux sort,uniq,cut,wc命令詳解 python 1表示以空格為分割符的第乙個匹配項,也就是...

shell統計ip訪問情況並分析訪問日誌

統計出每個 ip 的訪問量有多少 習題分析 這種分析日誌的需求,在平時工作中很常見,而且找運維工作時的筆試題裡面出現頻率也非常多。根據日誌內容,可以看到 ip 位址就是第一段內容,所以只需要把 1.log 的第一段給過濾出來,然後近一步統計每乙個 ip 的量即可。過濾第一段,使用 awk 就可以很容...