Windows:查找連接埠佔用並安全處理

用 PowerShell 區分 TCP 監聽與一般連線,找到程序後再決定正常停止或更換連接埠。

適用於含 NetTCPIP 模組的 Windows。以下指令只查詢本機,以 3000 為例;UDP 應改查 Get-NetUDPEndpoint。部分程序資訊需要系統管理員權限。

1. 找到 TCP 監聽

僅篩選 Listen 狀態,避免把瀏覽器連線的遠端連接埠誤當成本機監聽。沒有符合結果可能顯示「找不到物件」,不代表指令損壞,也不能保證稍後綁定一定成功。

Get-NetTCPConnection -LocalPort 3000 -State Listen |
  Select-Object LocalAddress, LocalPort, State, OwningProcess

2. 確認程序與歸屬

結合程序路徑、啟動時間和服務管理介面確認是否為你的程式。多個結果可能來自不同位址;不要僅憑名稱終止資料庫或系統服務。

Get-NetTCPConnection -LocalPort 3000 -State Listen |
  Select-Object -ExpandProperty OwningProcess -Unique |
  ForEach-Object { Get-Process -Id $_ }

3. 正常停止或調整設定,再複查

若是自己的開發伺服器,先在原終端按 Ctrl+C;受管理服務使用其正常停止流程。需維持執行時,改新應用程式的監聽連接埠並更新回呼與代理。再次執行查詢,並確認新應用程式確實啟動成功。不要把 taskkill /F 當成預設步驟。

來源與核驗

資料核對日期:

相關連接埠