注意:必须使用root用户才能操作,不然无法看到端口的进程
我的使用场景:
web应用启动的时候,自动启动了socket端口:9001,9002,当我关闭了tomcat,这两个端口却一直处于占用状态,导致我第二次启动tomcat的时候,一直处于端口被占用状态.
1.输入netstat -tln,查看系统当前所有被占用端口,主要是为了查看你的端口是否真正的被占用着,搭建可以看到我的9001,和9002端口都已经被占用了,所以我需要释放这两个端口
2.根据端口查询进程,输入lsof -i :9001,切记不要忘了添加冒号,如下图,就可以看到当前被占用的端口的进程
的进程编号
3.既然知道进程号了,那杀死当前进程就简单多了,直接kill -9 3340 回车,ok,杀死一个
4.既然杀死了,就得确认一下是否死透了,我们在输入下netstat -tln 看,9001和9002都没有了,因为我的9001和9002是依赖的两个socket端口,杀死其中一个,另一个也就挂了,所以会都消失,大家以后有这样的问题也可以仿照这么做