DOS檢視埠占用及殺掉程序命令

2022-08-29 01:39:10 字數 1663 閱讀 9608

myeclipse啟動tomcat時出現埠被占用的問題:

1. 檢視埠占用

在windows命令列視窗下執行:

netstat -aon|findstr 8080tcp 127.0.0.1:80 0.0.0.0:0 listening 2448

埠「8080」被pid(程序號)為2448的程序占用。

檢視埠「8080」被哪個應用占用,,繼續執行下面命令:

tasklist|findstr "2448"notepad.exe 2016 console 0 16,064 k

2. 關閉程序

2.1 按程序號關閉程序

taskkill /pid 2152

多個時格式為:

taskkill /pid 2152 /pid 1284

2.2 按程序名關閉程序

如要關閉notepad.exe,格式為:

taskkill /im notepad.exe

指定多個時格式為:

taskkill /im notepad.exe /im iexplorer.exe

如果是要關閉所有的,則使用萬用字元*,即:

taskkill /im *.exe

2.3 有提示的關閉程序

taskkill /t /im notepad.exetaskkill /t /pid 2152

這個效果是提示後在使用者確定後關閉,有提示框。

2.4 強行終止程序

taskkill /f /im notepad.exetaskkill /f /pid 2152

3. 埠狀態

3.1 listening狀態

ftp服務啟動後首先處於偵聽(listening)狀態。

3.2 established狀態

established的意思是建立連線。表示兩台機器正在通訊。

3.3 close_wait

對方主動關閉連線或者網路異常導致連線中斷,這時我方的狀態會變成close_wait 此時我方要呼叫close()來使得連線正確關閉

3.4 time_wait

我方主動呼叫close()斷開連線,收到對方確認後狀態變為time_wait。tcp協議規定time_wait狀態會一直持續2msl(即兩倍的分段最大生存期),以此來確保舊的連線狀態不會對新連線產生影響。處於time_wait狀態的連線占用的資源不會被核心釋放,所以作為伺服器,在可能的情況下,盡量不要主動斷開連線,以減少time_wait狀態造成的資源浪費。

目前有一種避免time_wait資源浪費的方法,就是關閉socket的linger選項。但這種做法是tcp協議不推薦使用的,在某些情況下這個操作可能會帶來錯誤。

3.5 syn_sent狀態

syn_sent狀態表示請求連線,當你要訪問其它的計算機的服務時首先要發個同步訊號給該埠,此時狀態為syn_sent,如果連線成功了就變為established,此時syn_sent狀態非常短暫。但如果發現syn_sent非常多且在向不同的機器發出,那你的機器可能中了衝擊波或**波之類的病毒了。這類病毒為了感染別的計算機,它就要掃瞄別的計算機,在掃瞄的過程中對每個要掃瞄的計算機都要發出了同步請求,這也是出現許多syn_sent的原因。

Dos命令檢視埠占用及關閉程序

在windows命令列視窗下執行 netstat aon findstr 8080 tcp 127.0.0.1 80 0.0.0.0 0 listening 2448埠 8080 被pid 程序號 為2448的程序占用。檢視埠 8080 被哪個應用占用,繼續執行下面命令 tasklist finds...

Dos命令檢視埠占用及關閉程序

在windows命令列視窗下執行 netstat aon findstr 8080 tcp 127.0.0.1 80 0.0.0.0 0 listening 2448埠 8080 被pid 程序號 為2448的程序占用。檢視埠 8080 被哪個應用占用,繼續執行下面命令 tasklist finds...

殺掉占用指定埠的程序

有時啟動tomcat,會啟動失敗,說埠已經被占用,那麼到底是哪個程式占用了埠呢?如何判斷是哪個程序 程式 占用了指定的埠呢?下面我會分兩個平台 windows,linux 來進行詳細說明 windows 系統 通過如下命令查詢占用指定埠的pid 程序id netstat ano findstr 指定...