天天看點

window下用cmd指令netstat 檢視系統端口使用情況

C:\Windows\system32>netstat -help

顯示協定統計和目前 TCP/IP 網絡連接配接。

NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [interval]

  -a            顯示所有連接配接和偵聽端口。

  -b            顯示在建立每個連接配接或偵聽端口時涉及的可執行程式。

                在某些情況下,已知可執行程式承載多個獨立的

                元件,這些情況下,顯示建立連接配接或偵聽端口時涉

                及的元件序列。此情況下,可執行程式的名稱

                位于底部[]中,它調用的元件位于頂部,直至達

                到 TCP/IP。注意,此選項可能很耗時,并且在您沒有

                足夠權限時可能失敗。

  -e            顯示以太網統計。此選項可以與 -s 選項結合使用。

  -f            顯示外部位址的完全限定域名(FQDN)。

  -n            以數字形式顯示位址和端口号。

  -o            顯示擁有的與每個連接配接關聯的程序 ID。

  -p proto      顯示 proto 指定的協定的連接配接;proto 可以是下列任

                何一個: TCP、UDP、TCPv6 或 UDPv6。如果與 -s 選

                項一起用來顯示每個協定的統計,proto 可以是下列任

                何一個: IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP

                或 UDPv6。

  -r            顯示路由表。

  -s            顯示每個協定的統計。預設情況下,顯示

                IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6

                的統計;-p 選項可用于指定預設的子網。

  -t            顯示目前連接配接解除安裝狀态。

  interval      重新顯示標明的統計,各個顯示間暫停的間隔秒數。

                按 CTRL+C 停止重新顯示統計。如果省略,則 netstat

                将列印目前的配置資訊一次。

檢視一個端口被哪個程序占用,然後殺掉它

C:\Documents and Settings\Administrator>netstat -ano|findstr 5152  

  TCP    127.0.0.1:5152         0.0.0.0:0              LISTENING       684  

C:\Documents and Settings\Administrator>taskkill /f /pid 684  

成功: 已終止 PID 為 684 的程序。

3.如果隻是簡單的想檢視都有哪些程式使用了哪些端口,可以使用下面的指令參數

C:\Documents and Settings\Administrator>netstat -abn  

Active Connections  

  Proto  Local Address          Foreign Address        State           PID  

  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       1380  

  c:\windows\system32\WS2_32.dll  

  C:\WINDOWS\system32\RPCRT4.dll  

  c:\windows\system32\rpcss.dll  

  C:\WINDOWS\system32\svchost.exe  

  -- 未知元件 --  

  [svchost.exe]  

  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4  

  [System]  

  TCP    0.0.0.0:6059           0.0.0.0:0              LISTENING       1432  

  [RavMonD.exe]  

  TCP    127.0.0.1:1027         0.0.0.0:0              LISTENING       3908  

  [alg.exe]  

  TCP    192.168.1.35:139       0.0.0.0:0              LISTENING       4  

 如果想查找那個程式使用了某個端口,可以如下

Java代碼  

C:\Documents and Settings\Administrator>netstat -aon|findstr 1029  

  UDP    0.0.0.0:1029           *:*                                    788  

可以看到pid為 788的程式占用了端口1029

進一步檢視是哪個程式,可以到任務管理器中看,也可以用指令

C:\Documents and Settings\Administrator>tasklist  

圖像名                       PID 會話名           會話#       記憶體使用  

========================= ====== ================ ======== ============  

System Idle Process            0 Console                 0         28 K  

System                         4 Console                 0        304 K  

smss.exe                     600 Console                 0        820 K  

csrss.exe                   1052 Console                 0      6,004 K  

winlogon.exe                1076 Console                 0      3,112 K  

services.exe                1120 Console                 0      6,148 K  

也可以直接用pid查找程式

C:\Documents and Settings\Administrator>tasklist|findstr 788  

360tray.exe                  788 Console                 0      5,240 K