我尝试在tomcat /bin目录下使用。/shutdown.sh关闭tomcat。但发现服务器没有正确关闭。因此我无法重新启动我的tomcat运行在端口8080上。
我想终止在8080上运行的tomcat进程。我首先想要在特定端口(8080)上运行的进程列表,以便选择要终止哪个进程。
我尝试在tomcat /bin目录下使用。/shutdown.sh关闭tomcat。但发现服务器没有正确关闭。因此我无法重新启动我的tomcat运行在端口8080上。
我想终止在8080上运行的tomcat进程。我首先想要在特定端口(8080)上运行的进程列表,以便选择要终止哪个进程。
当前回答
Linux:首先,如果你知道端口,你可以找到这个命令的PID:
netstat -tulpn
例子:-
Local Address Foreign Address State PID/Program name
:::3000 :::* LISTEN 15986/node
然后进行终止过程。执行如下命令:
kill -9 PID
Expample: -
杀死-9 15986
其他回答
只有以下命令对我有用:
ps -aux | grep 8000
然后:
sudo kill <PID>
如果端口上的服务没有响应,如何杀死进程
timeout 1 telnet localhost 8080 2>&1 | if grep -q 'Unable'; then sudo kill -9 $(sudo lsof -t -i:8080); fi
它的作用
启动“timeout”一秒,使telnet退出 ' 2>&1 | '管道错误消息,没有退出 如果错误消息包含'Unable',则运行代码杀死锁定端口8080的进程
这可以放在一个文件中,并从'sudo crontab'定期运行
杀死特定端口上所有进程的最佳方法;
kill -9 $(sudo lsof -t -i: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
根据@veer7所说:
如果你想知道端口上有什么,在杀死它之前先这么做。
$ sudo netstat -plten |grep java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 1000 906726 25296/java
tcp6 0 0 :::8009 :::* LISTEN 1000 907503 25296/java
tcp6 0 0 :::8080 :::* LISTEN 1000 907499 25296/java
$ ps 25296
PID TTY STAT TIME COMMAND
25296 ? Sl 0:16 /usr/lib/jvm/java-8-openjdk-amd64/bin/java -Dcatalina.base=/hom
使用'ps'和netstat报告的进程号