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

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


当前回答

选择端口号并应用netstat命令中的grep,如下所示

netstat -ap | grep :7070

控制台输出

tcp 0 0:::7070:::* LISTEN 3332/java

根据PID(进程标识号)终止服务

kill -9 3332

其他回答

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

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

kill -9 ' fuser 8080/tcp|xargs -n 1 ',该命令同时关闭监听8080端口的tcp连接进程

如果您想终止运行在端口号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

这将杀死端口80上运行的程序

sudo fuser -k 80/tcp

使用命令

 sudo netstat -plten |grep java

使用grep Java作为tomcat使用Java作为他们的进程。

它将显示带有端口号和进程id的进程列表

tcp6       0      0 :::8080                 :::*                    LISTEN      
1000       30070621    16085/java

“/java”前面的数字是进程号。现在使用kill命令终止进程

kill -9 16085

-9表示进程将被强制终止。