linux查看端口被占用情况,并结束占用该端口进程

Linux 查看端口占用情况可以使用 lsof 和 netstat 命令
(如果发现这两个命令提示没有找不到的话,就需要安装相应的lsof 和 net-tools)

另外:

ps -ef|grep 进程PID

可以获取已经知道进程ID的进程更多信息

kill -9 进程PID

命令则可以直接杀死相应进程。

这几个命令配合起来,可以完成这样一个任务:
希望查看8080进程被哪个进程占用,如果这个端口有被进程占用,就杀死该进程和它的子进程。

首先第一步,查看8080端口被哪个进程占用。
方式一:
lsof(list open files)是一个列出当前系统打开文件的工具。
一般格式为:

 lsof -i:端口号

lsof -i 命令需要root用户权限来执行,否则什么都看不到。
以root用户权限执行以下命令:

lsof -i:8080

看到
在这里插入图片描述
方式二:
netstat命令
netstat -tunlp 用于显示 tcp,udp 的端口和进程等相关情况。
netstat 查看端口占用语法格式:

netstat -tunlp | grep 端口号

这里我们就输入:

netstat -tunlp|grep 8080

看到:
在这里插入图片描述
我们想查看进程更多信息时候,我们就用下面的命令:

ps -ef|grep 进程PID

刚才看到占用8080端口的,有进程PID为15181和15182
我们用ps -ef命令看看

ps -ef|grep 15181

看到:
在这里插入图片描述
最下面那个不用看,是我们的ps命令,上面两个可看出15182进程的父进程PID为15181,这两个进程是父子关系。

kill -9 15181
kill -9 15182

杀死这两个占用8080端口的进程。

至于为什么是kill -9 而不是其他的,这个9有什么含义呢?
可以看这篇:kill与kill -9的区别

参考:
linux查看端口被占用情况
Ubuntu18.04安装netstat

你可能感兴趣的:(linux命令)