📅  最后修改于: 2023-12-03 15:18:40.970000             🧑  作者: Mango
在开发过程中,有时候需要查看当前系统上正在使用的端口。PowerShell 提供了一些命令来帮助我们完成这个任务。本文将介绍如何使用 PowerShell 查看正在使用的端口。
PowerShell 提供了 Get-NetTCPConnection
命令来获取当前所有正在使用的 TCP 连接。但是,这个命令会返回系统上所有的 TCP 连接信息,我们需要筛选出正在使用的端口信息。
以下是一个获取当前所有正在使用的端口的示例:
Get-NetTCPConnection -State "Established" | Select-Object LocalPort | Sort-Object -Unique
这个命令会返回系统上所有正在使用的 TCP 端口,并且去重。如果你需要获取所有正在使用的 UDP 端口,只需要将 Get-NetTCPConnection
命令换成 Get-NetUDPEndpoint
即可。
如果你只想查看指定进程正在使用的端口,可以使用 Get-Process
和 Get-NetTCPConnection
命令来实现。以下是一个获取指定进程正在使用的端口的示例:
$ProcessName = "chrome"
$ProcessId = (Get-Process $ProcessName).Id
Get-NetTCPConnection -State "Established" | Where-Object {$_.OwningProcess -eq $ProcessId} | Select-Object LocalPort | Sort-Object -Unique
这个命令会返回指定进程(例如 Chrome 浏览器)正在使用的所有 TCP 端口。
如果你只想查看某个端口的状态,可以使用 Test-NetConnection
命令来实现。以下是一个获取指定端口状态的示例:
Test-NetConnection -Port 80
这个命令会返回指定端口(例如 80 端口)的状态,包括是否开放、是否可连接等。
PowerShell 提供了很多命令来帮助我们查看系统上正在使用的端口。我们可以使用 Get-NetTCPConnection
命令来获取所有正在使用的 TCP 连接和端口,使用 Get-NetUDPEndpoint
命令来获取所有正在使用的 UDP 端口,使用 Test-NetConnection
命令来获取指定端口的状态。在日常开发中,这些命令会非常有用。