**
查询所有进程及线程端口占用情况,并关闭某端口的方法
**
1、windows 查系统下( cmd 模式下):
1)查询当前系统所有网络连接和监听端口以及对应的进程标识(PID):
netstat -aon
netstat -nao
2)查询特定端口占用情况,端口对应的 PID,
netstat -ano | findstr <端口号>
如:要查询 8848 端口占用情况:
netstat -aon | findstr 8848
netstat -nao |findstr "8848"
或者:
netstat -aon | findstr \"8848\"
3)若该 PID 为 0,则查看指定 PID 的进程
tasklist | findstr 0
或者:
tasklist | findstr “0”
## 如:查询 PID 为 11664 对应的程序进程:
tasklist | findstr 11664
tasklist | findstr "11664"
4)如果查看到是哪个进程或者程序占用了 8848 端口,
得知是哪个进程后,若该进程结束对后续操作无影响,
则通过 taskkill /T /F /PID 0 来结束该进程。
## 强制结束进程,包括所有关联的线程
taskkill /T /F /PID 0
taskkill /T /F /PID 11664
5)netstat 命令参数全解析
6)tasklist 命令参数解析
2、linux 系统下:
1)所有正在使用的端口及关联的进程/应用:
netstat -nap ## 列出当前系统占用的端口
ps aux ## 列出当前系统所有的进程
2)列出具体的端口占用情况:
netstat -tunlp | grep 3306 ## 端口号
netstat -tunlp | grep mysql ## 进程名称
netstat -tunlp | grep 29520 ## 进程ID
3)检查那个端口被那个进程占用:
netstat -lnp | grep 2222 ## 查看端口 2222 的占用情况
4)查看进程的详细信息
ps 6789
ps -aux | grep 6789
5)关闭进程,发送 kill 信号到指定的进程或进程组。使它们根据该信号进行操作。
kill -s 9 PID
kill -s SIGKILL PID
kill -s KILL PID
## 杀掉进程,重新启动 apache
kill -9 6 789 ## 杀掉编号为 6789 的进程