linux脚本杀死java进程

我想要Linux脚本杀死在控制台上运行的Java程序。

以下是以jarforms运行的进程。

[rapp@s1-dlap0 ~]$ ps -ef |grep java rapp 9473 1 0 15:03 pts/1 00:00:15 java -jar wskInterface-0.0.1-SNAPSHOT-jar-with-dependencies.jar rapp 10177 8995 0 16:00 pts/1 00:00:00 grep java [rapp@s1-dlap0 ~]$ 

你可以像这样简单地使用pkill -f

 pkill -f 'java -jar' 

编辑:杀死一个特定的Java进程运行您的特定jar使用这个基于正则表达式的pkill命令:

 pkill -f 'java.*lnwskInterface' 

如果你只是想杀死任何/所有的Java进程,那么你所需要的只是;

 killall java 

但是,如果您想要特别杀死wskInterface进程,那么您只需要删除进程ID;

 PID=`ps -ef | grep wskInterface | awk '{ print $2 }'` kill -9 $PID 

应该这样做,虽然可能有一个更简单的方法…

使用jps列出正在运行的java进程。 该命令与主类一起返回进程ID。 您可以使用kill命令来终止使用返回的id的进程或使用以下一个班轮脚本。

 kill $(jps | grep <MainClass> | awk '{print $1}') 

MainClass是运行java程序中的一个类,它包含main方法。