如何确定哪个进程正在侦听Windows上的TCP或UDP端口?
当前回答
netstat-ao和netstat-ab告诉您应用程序,但如果您不是系统管理员,则会得到“请求的操作需要提升”。
这并不理想,但如果您使用Sysinternals的Process Explorer,您可以转到特定进程的财产,查看TCP选项卡,看看它们是否正在使用您感兴趣的端口。这有点像大海捞针,但可能会对某人有所帮助。。。
其他回答
如果需要GUI,请使用TCPView。这是微软收购的旧Sysinternals应用程序。
如果有人像我一样需要macOS的等价物,下面是:
lsof-i tcp:8080
获取进程的PID后,可以使用以下命令终止该进程:
终止-9<PID>
使用以下工具:从cmd:C:\>netstat-anob,具有管理员权限。
进程管理
过程转储
端口监视器
全部来自sysinternals.com。
如果您只想了解每个进程下的进程运行和线程,我建议您学习wmic。这是一个很棒的命令行工具,它为您提供了比您所能知道的更多的信息。
例子:
c:\> wmic process list brief /every:5
上述命令将每5秒简要显示一个所有进程列表。要了解更多信息,您可以与/?例如,
c:\> wmic /?
c:\> wmic process /?
c:\> wmic prcess list /?
依此类推。:)
大多数答案中提到的-b开关要求您具有计算机上的管理权限。您实际上不需要提升权限来获取进程名称!
查找端口号中运行的进程的pid(例如8080)
netstat -ano | findStr "8080"
通过pid查找进程名称
tasklist /fi "pid eq 2216"
使用Windows的默认shell(PowerShell),不使用外部应用程序
对于使用PowerShell的用户,请尝试Get NetworkStatistics:
> Get-NetworkStatistics | where Localport -eq 8000
ComputerName : DESKTOP-JL59SC6
Protocol : TCP
LocalAddress : 0.0.0.0
LocalPort : 8000
RemoteAddress : 0.0.0.0
RemotePort : 0
State : LISTENING
ProcessName : node
PID : 11552
推荐文章
- 为什么SCTP不常用/不为人所知
- 无法启动IIS Express Web服务器,注册URL失败,访问被拒绝
- XAMPP -端口80被PID 4的“无法打开进程”使用!12
- 为什么git在Windows下记不住我的密码
- Git克隆/拉不断冻结在“存储密钥在缓存?”
- 我可以在/etc/hosts中映射主机名*和端口*吗?
- 如何修改Play执行run命令时使用的默认端口(9000)?
- 有没有替换Windows (Visual C)的unistd.h ?
- 从Windows批处理文件设置系统环境变量?
- 连接网络共享时,如何提供用户名和密码
- 如何找到可用的端口?
- 在Sublime Text 2中使用Ctrl+D进行多个选择时,我如何跳过匹配?
- #定义WIN32_LEAN_AND_MEAN具体排除了什么?
- 如何通过windows命令行关闭TCP和UDP端口
- 最好的轻量级web服务器(只有静态内容)的Windows