📌  相关文章
📜  列出哪个进程在特定端口上运行 ubuntu - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:50:13.023000             🧑  作者: Mango

列出哪个进程在特定端口上运行 - Ubuntu

在Ubuntu系统中,我们可以使用netstat命令来查看当前开启的端口及其对应的进程。具体使用方法如下:

sudo netstat -ltnp | grep :<port_number>

其中<port_number>为需要查找的端口号。该命令将会列出所有处于监听状态的网络连接,并且用grep查找指定端口号对应的进程。

例如,如下命令将会查找本机的80端口对应的进程:

sudo netstat -ltnp | grep :80

输出结果示例:

tcp6       0      0 :::80                   :::*                    LISTEN      9999/apache2

可以看到,当前80端口对应的进程为apache2,并且该进程的PID为9999

如果没有grep命令,我们也可以使用awk命令来只获取进程名和进程ID:

sudo netstat -ltnp | awk '{print $7 "\t" $NF}'

其中$7表示第七列数据(即进程ID和进程名的组合),$NF表示最后一列的数据(即进程名)。

输出结果示例:

PID/Program name
9999/apache2