在命令提示符窗口使用netstat可以查看端口的占用情況,netstat各個(gè)參數(shù)的含義如下
C:\Users\Administrator>netstat -h
顯示協(xié)議統(tǒng)計(jì)和當(dāng)前 TCP/IP 網(wǎng)絡(luò)連接。
NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [interval]
-a 顯示所有連接和偵聽端口。
-b 顯示在創(chuàng)建每個(gè)連接或偵聽端口時(shí)涉及的可執(zhí)行程序。
在某些情況下,已知可執(zhí)行程序承載多個(gè)獨(dú)立的
組件,這些情況下,顯示創(chuàng)建連接或偵聽端口時(shí)涉
及的組件序列。此情況下,可執(zhí)行程序的名稱
位于底部[]中,它調(diào)用的組件位于頂部,直至達(dá)
到 TCP/IP。注意,此選項(xiàng)可能很耗時(shí),并且在您沒(méi)有
足夠權(quán)限時(shí)可能失敗。
-e 顯示以太網(wǎng)統(tǒng)計(jì)。此選項(xiàng)可以與 -s 選項(xiàng)結(jié)合使用。
-f 顯示外部地址的完全限定域名(FQDN)。
-n 以數(shù)字形式顯示地址和端口號(hào)。
-o 顯示擁有的與每個(gè)連接關(guān)聯(lián)的進(jìn)程 ID。
-p proto 顯示 proto 指定的協(xié)議的連接;proto 可以是下列任
何一個(gè): TCP、UDP、TCPv6 或 UDPv6。如果與 -s 選
項(xiàng)一起用來(lái)顯示每個(gè)協(xié)議的統(tǒng)計(jì),proto 可以是下列任
何一個(gè): IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP
或 UDPv6。
-r 顯示路由表。
-s 顯示每個(gè)協(xié)議的統(tǒng)計(jì)。默認(rèn)情況下,顯示
IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6
的統(tǒng)計(jì);-p 選項(xiàng)可用于指定默認(rèn)的子網(wǎng)。
-t 顯示當(dāng)前連接卸載狀態(tài)。
interval 重新顯示選定的統(tǒng)計(jì),各個(gè)顯示間暫停的間隔秒數(shù)。
按 CTRL+C 停止重新顯示統(tǒng)計(jì)。如果省略,則 netstat
將打印當(dāng)前的配置信息一次。
例如:
查看 8080 端口被哪個(gè)進(jìn)程占用
C:\Users\Administrator>netstat -nao | findstr 8080
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 3936
TCP 192.168.1.154:59406 113.96.209.105:8080 ESTABLISHED 7828
TCP 192.168.1.154:59478 183.3.235.67:8080 ESTABLISHED 2508
TCP [::]:8080 [::]:0 LISTENING 3936
如果需要結(jié)束占用該端口的進(jìn)程可以使用任務(wù)管理或者是使用taskkill命令。
下面介紹使用taskkill命令結(jié)束占用端口的進(jìn)程
C:\Users\Administrator>taskkill /F /PID 3936
成功: 已終止 PID 為 3936 的進(jìn)程。
taskkill參數(shù)具體含義可以使用taskkill /?查看
ps:如果使用任務(wù)管理器通過(guò)查找進(jìn)程id結(jié)束進(jìn)程有點(diǎn)困難可以在命令行中使用tasklist命令查看進(jìn)程id對(duì)應(yīng)進(jìn)程的名字
C:\Users\Administrator>tasklist | findstr 3936
javaw.exe 3936 Console 1 920,296 K