統計連線狀態

linux指令, 架設等
回覆文章
頭像
tim
文章: 1360
註冊時間: 2008年 11月 26日, 00:49

統計連線狀態

文章 tim »

在 linux 下, 使用 netstat -na 來檢查連線數, 狀態, 與監聽 port 的清單十分方便, 但在數量大時, 有時不太容易統計, 簡單來看已建立(連接中)的數字指令如下:

代碼: 選擇全部

netstat -na | grep ESTABLISHED | wc -l
其中, 擷取 ESTABLISHED 再利用 wc -l 計算行數即可, 不過若要將所有狀態分別列出統計數字, 可以利用 awk 指令:

代碼: 選擇全部

netatat -na | awk '/^tcp/{++S[$NF]}END{for(a in S){ print a, S[a]}}'
如此一來便能快速有效地統計這些連接狀態.

參考資料:
https://stackoverflow.com/questions/530 ... at-command

代碼: 選擇全部

awk '
  /^tcp/             ##Checking if a line starts from tcp string.
  {++S[$NF]}         ##Creating an array named S whose index is last column($NF) value and increasing its occurrence each time it has same index by 1.
  END{               ##Starting END block of this awk code here.
   for(a in S){      ##Starting a for loop which loop through S array.
    print a, S[a]}}  ##Printing a value and S[a] value here.
' Input_file         ##Mentioning Input_file name here.
多多留言, 整理文章, 把經驗累積下來.....
回覆文章