lsof -i
:用于查看所有IPV4/6端口占用情况
lsof -i:port
:查看指定端口的占用情况
[root@yw ~]# lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nginx 1124 root 9u IPv4 8842 0t0 TCP *:http (LISTEN)
nginx 1125 root 9u IPv4 8842 0t0 TCP *:http (LISTEN)
nginx 1126 root 9u IPv4 8842 0t0 TCP *:http (LISTEN)
nginx 1127 root 9u IPv4 8842 0t0 TCP *:http (LISTEN)
nginx 1128 root 9u IPv4 8842 0t0 TCP *:http (LISTEN)
java 9535 root 149u IPv4 148223160 0t0 TCP 192.168.10.110:64885->192.168.10.110:http (CLOSE_WAIT)
列名解释
COMMAND:进程名称 PID:进程标示符 USER:用户 FD:文件描述符,应用程序通过文件描述符识别该文件,如cwd、txt等 TYPE:文件类型,如DIR DEVICE:指定磁盘的名称 SIZE/OFF:文件大小 NODE:索引节点(文件在磁盘上的标识) NAME:打开文件的确切名称
netstat -tunlp
用于显示tcp、udp的端口和进程等相关情况。
-t:(tcp)仅显示tcp相关选项
-u:(udp)仅显示udp相关选项
-n:拒绝显示别名,能显示数字的全部转换为数字
-l:仅列出有在 Listen(监听) 的服务状态
-p:显示建立相关链接的程序名
[root@yw ~]# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 1179/smbd
tcp 0 0 0.0.0.0:8001 0.0.0.0:* LISTEN 10600/java
从上面的日志中可以看出端口号以及PID。
netstat -tunlp | grep 80
[root@yw ~]# netstat -tunlp | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1124/nginx
ps -aux
用于显示当前进程的状态
a:显示所有进程
-a:显示同一终端下的所有程序
-A:显示所有进程
c:显示进程的真实名称
f:显示程序间的关系
-au:显示较详细的资讯
-aux:显示所有包含其他使用者的进程
[root@yw ~]# ps -aux | grep docker
pgrep专门用于查询进程
[root@yw ~]# pgrep docker