linux 查看端口占用情况并关闭进程

  首先要搞清楚 linux 查看进程和查看端口是两个概念,一般来讲进程会有多个,而固定端口只会有一个。

1、查看进程 ,通常在使用 ps   命令后 用管道连接(ps -ef|grep  xxx ) 查询特定进程

 

 显示当前用户,进程号,进程名等信息

 使用 kill + pid即可关闭进程

 需要注意的是:一些初学者在该命令后添加端口号进行查询,查到的不是改端口所在进程,而是grep 进程,而grep进程的pid是时时都在变化的,如果使用关闭命令强制关闭

 将会退出服务终端....

 

 2、查看端口号被占用情况 lsof -i 命令

刚说到ps +管道查询端口是无效的,正确的是需要使用 lsof命令 加 -i 再加端口号(lsof -i:8080 )

 

 

常见参数
lsof -i:8080:查看8080端口占用 lsof abc.txt:显示开启文件abc.txt的进程 lsof -c abc:显示abc进程现在打开的文件 lsof -c -p 1234:列出进程号为1234的进程所打开的文件 lsof -g gid:显示归属gid的进程情况 lsof +d /usr/local/:显示目录下被进程开启的文件 lsof +D /usr/local/:同上,但是会搜索目录下的目录,时间较长 lsof -d 4:显示使用fd4的进程 lsof -i -U:显示所有打开的端口和UNIX domain文件

再使用kill + pid 命令关闭进程即可 

3、查看端口号被占用情况  netstat 命令

netstat 命令是Linux用于显示各种网络相关信息,是一个监控TCP/IP网络的非常有用的工具,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

常见参数

-a或--all:显示所有选项,默认不显示LISTEN相关

-t或--tcp:仅显示tcp相关选项

-u或--udp:仅显示udp相关选项

-n或--numeric:直接使用ip地址,而不通过域名服务器(拒绝显示别名,能显示数字的全部转化成数字)

-l或--listening:仅列出有在 Listen (监听) 的服務状态

-p或--programs:显示建立相关链接的程序名

-r或--route:显示路由信息,路由表

-e或--extend:显示扩展信息,例如uid等

-s或--statistice:显示网络工作信息统计表(按各个协议进行统计)

-c或--continuous:每隔一个固定时间,执行该netstat命令。

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

 

posted @ 2021-11-05 10:53  采采卷耳&不盈倾筐  阅读(2155)  评论(0编辑  收藏  举报