如何在Windows中查找使用端口80的程序?
这个问题在这里已经有了答案:
开始 - >附件右键点击“命令提示符”,在菜单中点击“以管理员身份运行”(在Windows XP上,您可以照常运行),运行netstat -anb
然后查看程序的输出。
顺便说一句,Skype默认尝试使用端口80和443作为传入连接。
您也可以在文本编辑器中运行netstat -anb >%USERPROFILE%ports.txt
接着start %USERPROFILE%ports.txt
以打开端口和进程列表,您可以在其中搜索所需的信息。
您还可以使用powershell来解析netstat
输出并以更好的方式呈现它(或以您想要的任何方式进行处理):
$proc = @{};
Get-Process | ForEach-Object { $proc.Add($_.Id, $_) };
netstat -aon | Select-String "s*([^s]+)s+([^s]+):([^s]+)s+([^s]+):([^s]+)s+([^s]+)?s+([^s]+)" | ForEach-Object {
$g = $_.Matches[0].Groups;
New-Object PSObject |
Add-Member @{ Protocol = $g[1].Value } -PassThru |
Add-Member @{ LocalAddress = $g[2].Value } -PassThru |
Add-Member @{ LocalPort = [int]$g[3].Value } -PassThru |
Add-Member @{ RemoteAddress = $g[4].Value } -PassThru |
Add-Member @{ RemotePort = $g[5].Value } -PassThru |
Add-Member @{ State = $g[6].Value } -PassThru |
Add-Member @{ PID = [int]$g[7].Value } -PassThru |
Add-Member @{ Process = $proc[[int]$g[7].Value] } -PassThru;
#} | Format-Table Protocol,LocalAddress,LocalPort,RemoteAddress,RemotePort,State -GroupBy @{Name='Process';Expression={$p=$_.Process;@{$True=$p.ProcessName; $False=$p.MainModule.FileName}[$p.MainModule -eq $Null] + ' PID: ' + $p.Id}} -AutoSize
} | Sort-Object PID | Out-GridView
它也不需要提升运行。
键入命令:
netstat -aon | findstr :80
netstat -aon | findstr :80
。
它会显示所有使用端口80的进程。请注意右侧柱中的pid。
如果您想释放端口,请转至任务管理器,按pid排序并关闭这些进程。
如果你想要真的很花哨,从sysinternals下载TCPView
TCPView是一个Windows程序,它将向您显示系统中所有TCP和UDP端点的详细列表,包括本地和远程地址以及TCP连接的状态。 在Windows Server 2008,Vista和XP上,TCPView还会报告拥有端点的进程的名称。 TCPView提供了一个更加丰富和方便的Windows附带的Netstat程序子集。
链接地址: http://www.djcxy.com/p/30283.html