我尝试在tomcat /bin目录下使用。/shutdown.sh关闭tomcat。但发现服务器没有正确关闭。因此我无法重新启动我的tomcat运行在端口8080上。
我想终止在8080上运行的tomcat进程。我首先想要在特定端口(8080)上运行的进程列表,以便选择要终止哪个进程。
我尝试在tomcat /bin目录下使用。/shutdown.sh关闭tomcat。但发现服务器没有正确关闭。因此我无法重新启动我的tomcat运行在端口8080上。
我想终止在8080上运行的tomcat进程。我首先想要在特定端口(8080)上运行的进程列表,以便选择要终止哪个进程。
当前回答
要知道某个端口上运行的服务的pid:
netstat -tulnap | grep :*port_num*
您将得到该过程的描述。现在使用kill或kill -9 pid。容易死亡。
e.g
Netstat -ap | grep:8080
tcp6 0 0 :::8080 :::* LISTEN 1880/java
Now:
kill -9 1880
记住以root用户运行所有命令
其他回答
这个fuser 8080/tcp将打印该端口绑定进程的PID。
这个fuser -k 8080/tcp会终止这个进程。
仅适用于Linux。更通用的是使用lsof -i4(或IPv6的6)。
杀死特定端口上所有进程的最佳方法;
kill -9 $(sudo lsof -t -i:8080)
kill -9 ' fuser 8080/tcp|xargs -n 1 ',该命令同时关闭监听8080端口的tcp连接进程
可以使用lsof命令。 假设端口号是8090
lsof -i:8090
该命令返回该端口上的开放进程列表。
之类的……
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ssh 75782 eoin 5u IPv6 0x01c1c234 0t0 TCP localhost:8090 (LISTEN)
要释放端口,杀死使用它的进程(进程id是75782)…
kill -9 75782
这个方法对我很管用。 这是原文的链接:link
使用命令
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表示进程将被强制终止。