📅  最后修改于: 2023-12-03 15:26:52.546000             🧑  作者: Mango
在开发和运维过程中,需要经常查看正在使用的端口列表。本文将介绍如何在Linux系统中使用Shell/Bash命令来查看当前正在使用的端口列表。
使用netstat
命令可以查看当前正在使用的端口列表。
netstat -tlnp
-t
:只显示 TCP 协议的连接状态。-l
:只显示监听状态的连接信息。-n
:使用数字表示IP地址和端口号,而不使用主机名和服务名。-p
:显示进程名称和进程 ID。命令执行后,输出会列出所有监听状态的 TCP 端口及其对应的进程信息,如下所示:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 123/sshd
tcp6 0 0 :::22 :::* LISTEN 123/sshd
tcp6 0 0 :::33060 :::* LISTEN 121/mysqld
每一行的含义如下:
Proto
:协议类型。Recv-Q
:接收队列中未读取的数据大小。Send-Q
:发送队列中未读取的数据大小。Local Address
:本地地址和端口号,如果地址为 0.0.0.0
表示监听所有网卡上的端口。Foreign Address
:远程地址和端口号,如果显示为 *.*.*.*:*
表示没有远程主机连接到此端口。State
:连接状态。PID/Program name
:进程 ID 和进程名称。使用netstat
命令可以快速查询正在使用的端口列表,命令简单易用。但需要注意的是,该命令需要使用root用户权限执行,否则可能无法查看所有端口信息。