Ubuntu – How to kill a process with a phrase in its name?

bashcommand lineprocess

I need to kill a process that contains myName in its description. Currently I'm doing:

ps -ax |grep myName
I see PID
kill -9 PID

How can I do the same with one command without entering the PID?

Best Answer

If myName is the name of the process/executable which you want to kill, you can use:

pkill myName

pkill by default sends the SIGTERM signal (signal 15). If you want the SIGKILL or signal 9, use:

pkilll -9 myName

If myName is not the process name or for example, is an argument to another (long) command, pkill (or pgrep) might not work as expected. So you need to use the -f option. From man kill:

-f, --full
              The pattern is normally only matched against the  process  name.
              When -f is set, the full command line is used.
NOTES
The process name used for matching is limited to the 15 characters present
   in the output of /proc/pid/stat.  Use the -f option to match  against  the
   complete command line, /proc/pid/cmdline.

So:

pkill -f myName

or

kill -9 $(pgrep -f myName)
Related Question