windows怎么用powershell查看网络连接_windows如何用get-nettcpconnection查看端口连接状态【命令】

如果您需要在Windows系统中快速获取当前TCP连接的详细信息,包括本地地址、远程地址、端口号及连接状态,则可以使用PowerShell内置的Get-NetTCPConnection cmdlet。以下是执行该操作的具体步骤:

一、以管理员身份运行PowerShell

Get-NetTCPConnection命令在部分系统环境下需提升权限才能显示全部连接(尤其是涉及系统进程或受保护端口时)。以管理员身份运行可确保获取完整结果。

1、点击“开始”菜单,在搜索框中输入PowerShell。

2、在搜索结果中右键单击“Windows PowerShell”,选择“以管理员身份运行”。

3、若弹出用户账户控制(UAC)提示,点击是确认。

二、使用Get-NetTCPConnection查看所有TCP连接

该命令默认列出本机所有活动及监听中的TCP连接,输出包含LocalAddress、LocalPort、RemoteAddress、RemotePort、State、OwningProcess等关键字段,便于定位端口占用与连接关系。

1、在已启动的PowerShell窗口中输入:Get-NetTCPConnection,然后按回车。

2、等待命令执行完成,屏幕将滚动显示全部TCP连接条目。

3、如需暂停查看,可按空格键逐页翻动;按Q退出分页模式。

三、筛选指定本地端口的连接

当需排查特定端口(例如80、443、3389)是否被占用或存在异常连接时,可通过Where-Object对LocalPort属性进行过滤,缩小结果范围。

1、输入以下命令(以检查本地端口80为例):Get-NetTCPConnection | Where-Object {$_.LocalPort -eq 80},然后按回车。

2、若返回结果为空,表示该端口当前无TCP监听或活动连接。

3、若返回一行或多行记录,注意观察State字段值:如为Listen表示服务正在监听;如为Established表示已建立双向通信。

四、结合OwningProcess查找关联进程

Get-NetTCPConnection输出中的OwningProcess字段为PID(进程标识符),但不直接显示进程名。需通过Get-Process命令关联查询,才能确认哪个程序占用了目标端口。

1、先获取某连接的PID,例如从上一步结果中记下OwningProcess值为1234。

2、在PowerShell中输入:Get-Process -Id 1234 | Select-Object ProcessName,Id,Path,然后按回车。

3、输出将显示该PID对应的进程名称、完整路径等信息,帮助识别来源程序。

五、导出连接列表为CSV文件便于分析

当连接数量庞大或需长期存档、跨设备比对时,可将结果导出为结构化CSV文件,支持Excel等工具打开查看与排序。

1、输入命令:Get-NetTCPConnection | Export-Csv -Path “$env:USERPROFILE\Desktop\TCPConnections.csv” -NoTypeInformation,然后按回车。

2、命令执行完毕后,桌面将生成名为TCPConnections.csv的文件。

3、双击该文件即可用Excel打开,所有列(如LocalAddress、State、OwningProcess)均以表格形式呈现,支持筛选与搜索。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。