我尝试在tomcat /bin目录下使用。/shutdown.sh关闭tomcat。但发现服务器没有正确关闭。因此我无法重新启动我的tomcat运行在端口8080上。
我想终止在8080上运行的tomcat进程。我首先想要在特定端口(8080)上运行的进程列表,以便选择要终止哪个进程。
我尝试在tomcat /bin目录下使用。/shutdown.sh关闭tomcat。但发现服务器没有正确关闭。因此我无法重新启动我的tomcat运行在端口8080上。
我想终止在8080上运行的tomcat进程。我首先想要在特定端口(8080)上运行的进程列表,以便选择要终止哪个进程。
当前回答
只有以下命令对我有用:
ps -aux | grep 8000
然后:
sudo kill <PID>
其他回答
在我的情况下,cent os在建议的答案中有一些问题。所以我使用了以下解决方案:
ss -tanp | grep 65432 | head -1 | grep -Po "(?<=pid=).*(?=,)" | xargs kill
如果端口上的服务没有响应,如何杀死进程
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'定期运行
这是Windows的解决方案:
C:\Users\Niroshan>netstat -ano|findstr "PID :8080"
Proto Local Address Foreign Address State PID
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 18264
taskkill /pid 18264 /f
在Windows中,它将是netstat -ano | grep "8080",我们得到以下消息TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 10076
我们可以使用taskkill /F /PID 10076来终止PID
这个fuser 8080/tcp将打印该端口绑定进程的PID。
这个fuser -k 8080/tcp会终止这个进程。
仅适用于Linux。更通用的是使用lsof -i4(或IPv6的6)。