用进程名而不是PID来杀死java进程(在linux中)

时间:2014-07-17 01:04:01

标签: linux process pid

在配置/安装Hadoop集群时,我们经常需要终止Java Process / Daemon。 我们看到Java进程/守护进程使用jps命令运行。 通常我们用它的PID来杀死Java进程。 E.g。

kill -9 112224

输入PID有点困难。有没有办法按名称杀死进程?在单个命令中?

4 个答案:

答案 0 :(得分:26)

以下是使用Process Name而不是ProcessID来杀死Java进程的命令。

kill `jps | grep "DataNode" | cut -d " " -f 1`

让我解释一下这个命令的好处。假设您正在使用Hadoop集群。通常要求您检查使用jps命令运行的java守护程序。让我们说当你在工作节点上给出这个命令时,你会看到以下输出。

1915 NodeManager
18119 DataNode
17680 Jps

通常,如果我们要杀死DataNode进程,我们将使用以下命令

kill -9 18119

但是,使用PID命令键入kill有点困难。通过使用此答案中给出的命令,可以轻松编写进程的名称。我们还可以准备shell脚本来杀死hadoop集群中常用的deamons, 或者我们可以准备一个shell脚本,并可以使用参数作为进程名称。

答案 1 :(得分:0)

如何使用

killall firefox

答案 2 :(得分:0)

jps -l帮助我杀死了进程

kill `jps -l | grep "myjarname.jar" | cut -d " " -f 1`

答案 3 :(得分:-1)

获取该java进程的进程ID

netstat -tuplen

要杀死并运行的进程的进程ID(PID)

kill -9 PID