windows查看端口占用命令

本文介绍了一种简单方法,通过在Windows命令行窗口下执行特定命令来确定占用所需端口的程序及其进程ID,进而帮助解决端口占用问题。

  开始--运行--cmd 进入命令提示符 输入netstat -aon 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"


经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用

假如我们需要确定谁占用了我们的80端口

1、Windows平台
在windows命令行窗口下执行:
C:\>netstat -aon|findstr "80"
TCP    127.0.0.1:80        0.0.0.0:0              LISTENING      2448
看到了吗,端口被进程号为2448的进程占用,继续执行下面命令:
C:\>tasklist|findstr "2448"
thread.exe                    2016 Console                0    16,064 K
很清楚吧,thread占用了你的端口,Kill it
如果第二步查不到,那就开任务管理器,看哪个进程是2448,然后杀之即可。 如果需要查看其他端口。把 80 改掉即可

 

 

大家知道在linux下使用 lsof +p 端口号 可以查看端口的进程
使用此命令可以查看win下所有开着的端口是被那个系统程序占用以及程序的pid。
n年前搞测试的时候解决端口占用问题时候用的命令,想里半天才回忆出来。分享给大家。为了方便记忆参数写成了No AB 更多参数请查考netstat /?

----一下是节选部分输出结果--
netstat -noab

Active Connections
Proto Local Address          Foreign Address        State          PID
TCP    0.0.0.0:135            0.0.0.0:0              LISTENING      996
c:\windows\system32\WS2_32.dll
C:\WINDOWS\system32\RPCRT4.dll
c:\windows\system32\rpcss.dll
C:\WINDOWS\system32\svchost.exe
C:\WINDOWS\system32\ADVAPI32.dll
[svchost.exe]
TCP    0.0.0.0:445            0.0.0.0:0              LISTENING      4
[System]
TCP    0.0.0.0:2967          0.0.0.0:0              LISTENING      1776
[Rtvscan.exe]
TCP    72.71.0.24:139        0.0.0.0:0              LISTENING      4
[System]
TCP    127.0.0.1:1049        0.0.0.0:0              LISTENING      232
[alg.exe]
TCP    127.0.0.1:1060        0.0.0.0:0              LISTENING      2104
[ccApp.exe]

<think>我们正在回答用户的问题:“Windows系统如何查看端口占用情况” 根据用户提供的引用,我们可以总结出两种主要方法:使用命令提示符(cmd)和使用PowerShell。 我们将分步骤详细说明这两种方法,并确保引用正确。 注意:用户引用了三个来源,其中引用[1]和引用[2]提供了两种不同的方法,引用[3]是一个示例输出,我们可以参考。 方法一:使用命令提示符(cmd)[^1][^3] 步骤1:打开命令提示符(建议以管理员身份运行) 步骤2:使用netstat命令查看端口占用情况 步骤3:终止占用端口进程(如果需要) 方法二:使用PowerShell(引用[2]) 步骤1:打开PowerShell(管理员身份) 步骤2:使用Get-NetTCPConnection命令 我们将按步骤详细说明,并给出示例。 同时,生成相关问题。</think>### Windows 系统查看端口占用情况指南 在 Windows 系统中查看端口占用情况主要有两种方法:使用**命令提示符**和**PowerShell**。以下是详细操作步骤: #### 方法一:使用命令提示符(推荐)[^1] 1. **打开管理员命令提示符** - 按 `Win + R` 输入 `cmd` - 右键选择"以管理员身份运行"(避免权限问题) 2. **查看所有端口占用** ```cmd netstat -ano ``` - 输出示例: ``` TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1234 TCP 127.0.0.1:443 0.0.0.0:0 LISTENING 5678 ``` - 列说明: - `协议类型`:TCP/UDP - `本地地址:端口`:如 `0.0.0.0:80` - `状态`:`LISTENING`(监听中)/`ESTABLISHED`(已连接) - `PID`:进程ID(最后一列) 3. **查找特定端口** ```cmd netstat -ano | findstr ":<端口号>" ``` - 示例(查找80端口): ```cmd netstat -ano | findstr ":80" ``` 4. **终止占用进程** ```cmd taskkill /t /f /pid <PID> ``` - 示例(终止PID=1234的进程): ```cmd taskkill /t /f /pid 1234 ``` #### 方法二:使用 PowerShell[^2] 1. **打开管理员 PowerShell** - 按 `Win + X` 选择 "Windows PowerShell (管理员)" 2. **查看端口占用** ```powershell Get-NetTCPConnection | Where-Object { $_.LocalPort -eq <端口号> } | Format-Table LocalAddress, LocalPort, State, OwningProcess ``` - 示例(查找443端口): ```powershell Get-NetTCPConnection | Where-Object { $_.LocalPort -eq 443 } | Format-Table LocalAddress, LocalPort, State, OwningProcess ``` #### 端口状态说明 | 状态 | 含义 | 常见场景 | |---------------|--------------------------|------------------------| | `LISTENING` | 端口正在监听连接 | 服务已启动 | | `ESTABLISHED` | 已建立活动连接 | 客户端与服务端通信中 | | `CLOSE_WAIT` | 等待关闭连接 | 连接终止中 | | `TIME_WAIT` | 连接关闭后的等待状态 | 确保数据完整传输 | #### 常见问题解决 1. **端口被系统进程占用** - 尝试 `net stop` 相关服务(如 `net stop http` 释放80端口) 2. **PID 对应进程查询** ```cmd tasklist | findstr "<PID>" ``` 示例(查询PID=5678): ```cmd tasklist | findstr "5678" ``` 3. **拒绝访问错误** 确保使用**管理员身份**运行命令提示符或 PowerShell[^1]。 > 提示:`netstat -ano` 输出中的 `0.0.0.0` 表示监听所有网络接口,`127.0.0.1` 表示仅本地访问[^3]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值