我尝试在tomcat /bin目录下使用。/shutdown.sh关闭tomcat。但发现服务器没有正确关闭。因此我无法重新启动我的tomcat运行在端口8080上。

我想终止在8080上运行的tomcat进程。我首先想要在特定端口(8080)上运行的进程列表,以便选择要终止哪个进程。


当前回答

如果您想终止运行在端口号8080上的进程,那么首先需要找到8080端口进程标识号(PID),然后终止它。执行如下命令,查询到8080端口号PID:

sudo lsof -t -i:8080

在这里,

Sudo -命令询问管理员权限(用户id和密码)。 lsof -文件列表(也用于列出相关进程) -t -只显示进程ID -i -只显示Internet连接相关进程 :8080 -只显示该端口号下的进程

所以你现在可以使用以下命令轻松地杀死你的PID:

sudo kill -9 <PID>

在这里,

Kill -终止进程的命令 -9 -强力

您可以使用一个命令来杀死特定端口上的进程,使用以下命令:

sudo kill -9 $(sudo lsof -t -i:8080)

欲了解更多信息,请参见以下链接 如何杀死一个进程在特定的端口上的linux

其他回答

杀死特定端口上所有进程的最佳方法;

kill -9 $(sudo lsof -t -i:8080)

只有以下命令对我有用:

ps -aux | grep 8000

然后:

sudo kill <PID>

在Windows中,它将是netstat -ano | grep "8080",我们得到以下消息TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 10076

我们可以使用taskkill /F /PID 10076来终止PID

像这样试试,

 sudo fuser -n tcp -k 8080

在我的情况下,cent os在建议的答案中有一些问题。所以我使用了以下解决方案:

  ss -tanp | grep 65432 | head -1 | grep -Po "(?<=pid=).*(?=,)" | xargs kill