📅  最后修改于: 2023-12-03 14:50:01.537000             🧑  作者: Mango
有时候我们需要停止本地主机上的某个端口,比如说停止一个不需要的服务或者应用程序。在 Shell-Bash 中,我们可以使用一些命令帮助我们完成这个任务。
lsof
命令可以列出当前系统中打开的文件,包括网络套接字(即端口)。我们可以使用 lsof
来查找哪个进程正在占用我们想要停止的端口。
lsof -i :<端口号>
例如,如果我们想要停止占用 8080 端口的进程,我们可以使用以下命令来查找该进程的 PID:
lsof -i :8080
命令的输出应该类似这样:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 1234 user 23u IPv6 0x123456789abcdef 0t0 TCP *:http-alt (LISTEN)
其中 PID
列就是占用该端口的进程的 ID。
有了占用该端口进程的 PID,我们就可以使用 kill
命令停止该进程。命令如下:
kill <PID>
例如,停止 PID 为 1234 的进程,我们可以使用以下命令:
kill 1234
fuser
命令也可以类似 lsof
列出某个端口正在使用的进程,但是 fuser
更加简单直接。
fuser -k <端口号>/tcp
例如,停止占用 8080 端口的进程,我们可以使用以下命令:
fuser -k 8080/tcp
以上介绍了在 Shell-Bash 中停止本地主机上某个端口的方法,分别使用了 lsof
、kill
和 fuser
命令。这些命令比较简单,但也非常强大,可以帮助我们轻松解决一些问题。