0
我想排序並計算從我的服務器上下載多少文件(3種類型)。如何在Linux上嗅探結果進行解析?
我安裝tshark
跑遵循命令應該捕獲GET
請求:
`./tshark 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)' -R'http.request.method == "GET"'`
所以嗅探器開始工作,每一秒,我得到新的行,這裏是一個結果:
0.000000 144.137.136.253 -> 192.168.4.7 HTTP GET /pids/QE13_593706_0.bin HTTP/1.1
8.330354 1.1.1.1 -> 2.2.2.2 HTTP GET /pids/QE13_302506_0.bin HTTP/1.1
17.231572 1.1.1.2 -> 2.2.2.2 HTTP GET /pids/QE13_382506_0.bin HTTP/1.0
18.906712 1.1.1.3 -> 2.2.2.2 HTTP GET /pids/QE13_182406_0.bin HTTP/1.1
19.485199 1.1.1.4 -> 2.2.2.2 HTTP GET /pids/QE13_302006_0.bin HTTP/1.1
21.618113 1.1.1.5 -> 2.2.2.2 HTTP GET /pids/QE13_312106_0.bin HTTP/1.1
30.951197 1.1.1.6 -> 2.2.2.2 HTTP GET /nginx_status HTTP/1.1
31.056364 1.1.1.7 -> 2.2.2.2 HTTP GET /nginx_status HTTP/1.1
37.578005 1.1.1.8 -> 2.2.2.2 HTTP GET /pids/QE13_332006_0.bin HTTP/1.1
40.132006 1.1.1.9 -> 2.2.2.2 HTTP GET /pids/PE_332006.bin HTTP/1.1
40.407742 1.1.2.1 -> 2.2.2.2 HTTP GET /pids/QE13_452906_0.bin HTTP/1.1
什麼我需要做的是將結果類型存儲到其他文件中,並將其計數爲/pids/*****.bin
。 在Linux不強,但確保它可以完成1-3行腳本。
也許與awk
,但我不知道是什麼技術來讀取嗅探器的結果。
謝謝,
肯定嘗試,我可以分析日誌,但有時我得到10-20G文件大小,它會導致高中央處理器。所以我試圖嗅探它 – 2013-04-10 15:02:35
只是像這樣解析輸出'tail -f/path/logfile |如果你需要從現在開始的數據'grep etc' – 2013-04-10 15:06:06