linux系统如何查看应用端口号
时间: 2023-05-30 13:07:16 浏览: 256
有多种方法可以查看Linux系统中应用程序的端口号,以下是其中一些常用的方法:
1. 使用netstat命令
可以使用以下命令列出当前Linux系统中所有正在监听端口的应用程序:
```
netstat -tulnp
```
其中,参数含义为:
- -t:列出所有TCP连接
- -u:列出所有UDP连接
- -l:只列出监听的端口
- -n:不进行域名解析
- -p:显示进程ID和进程名
2. 使用lsof命令
lsof命令可以列出当前Linux系统中所有打开的文件,包括网络文件,因此也可以用来查看应用程序的端口号。以下命令可以列出所有正在监听端口的应用程序:
```
lsof -i -P -n | grep LISTEN
```
其中,参数含义为:
- -i:只列出网络文件
- -P:不进行端口号到服务名的转换
- -n:不进行域名解析
- grep LISTEN:只显示正在监听的端口
3. 使用ss命令
ss命令是netstat的替代品,更加高效。以下命令可以列出当前Linux系统中所有正在监听端口的应用程序:
```
ss -tulwn
```
其中,参数含义为:
- -t:列出所有TCP连接
- -u:列出所有UDP连接
- -l:只列出监听的端口
- -w:显示完整的socket信息
- -n:不进行域名解析
4. 使用/proc文件系统
可以在/proc文件系统中查找应用程序打开的网络套接字,以此来确定应用程序的端口号。以下命令可以列出当前Linux系统中所有正在监听端口的应用程序:
```
ls /proc/*/fd/* | xargs -I{} sh -c 'readlink "{}" | grep socket && echo {}' | awk -F'[ /]' '{print $3, $11}' | sort -n | uniq
```
其中,命令的具体含义可以参考[这篇文章](https://unix.stackexchange.com/questions/13345/how-can-i-get-a-list-of-all-open-network-ports-on-linux)。
阅读全文