Kill a java process (in linux) by process name ins

2020-02-28 03:24发布

问题:

While configuring/installing Hadoop cluster we often need to kill a Java Process/Daemon. We see Java Processes/Daemons running with jps command. Usually we kill a Java process with its PID. E.g.

kill -9 112224

It is little bit difficult to type the PID. Is there a way to kill the process by its name? In a single command?

回答1:

Here is the command to kill the Java process by is Process Name instead of its ProcessID.

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

Let me explain more, about the benefit of this command. Lets say you are working with Hadoop cluster. Its often required that you check java daemons running with jps command. Lets say when you give this command on worker nodes, you see following output.

1915 NodeManager
18119 DataNode
17680 Jps

Usually, if we want to kill DataNode process, we would use following command

kill -9 18119

But, it is little bit difficult to type the PID, to use kill command. By using the command, given in this answer, it is easy to write the name of the process. We can also prepare shell scripts to kill commonly used deamons in hadoop cluster, or we can prepare one shell script and can use parameter as process name.



回答2:

How about using

killall firefox


回答3:

jps -l has helped me killing the process

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


回答4:

To get the process id of that java process run

netstat -tuplen

Process ID (PID) of that process whom you want to kill and run

kill -9 PID