2011-06-07 28 views
0

獨立IP地址數我有一個Rails日誌,看起來像這樣基本awk的幫助:想掃描Rails日誌,發現每

Started GET "[path-omitted]" for 166.137.138.210 at 2011-06-07 13:03:29 -0400 
etc. 

我想寫提取數量awk腳本每個日期的唯一IP地址。我是一個awk新手。我如何做到這一點?

回答

4

如果IP總是在第五欄:

awk '{ ips[$5]++ } END { for (ip in ips) { print ip } }' your_log_file 

如果你想輸出的數量,您可以更改打印語句:

print ips[ip]" "ip 

或類似的東西。

2

您可以從下面的快速和骯髒的腳本開始 - 然後輕鬆應用awk來完成您的任務。在下面的腳本中,sample.txt是包含日誌信息的文件。我將離開最終的awk腳本作爲練習:)它應該很容易。如果您遇到麻煩,請告訴我,我可以在一兩個小時內給您,但嘗試它可能是值得的。

sed 's/^[^"]*.[^"]*..for.//' < sample.txt | sed 's/\([^ ]*\) at \([^ ]*\).*/\2 \1/' | sort -u