How to kill all processes owned by `user` on Centos 7?
38,953
You Are Correct
Wrong: pkill -u bob $(pgrep -u bob)
Correct: pkill -u bob
The flash card probably meant to show:
kill $(pgrep -u bob)
which would kill all of the processes returned by pgrep -u bob
.
Related videos on Youtube
Author by
mbigras
Updated on September 18, 2022Comments
-
mbigras over 1 year
I read in an online flash card that the command is:
pkill -u bob $(pgrep -u bob)
However, I think this is wrong. I think it's saying:
Kill all the processed owned by
bob
, and4572\n4600
Because:
[bob@localhost ~]$ pgrep -u bob 4572 4600
Also, it gives an error:
[bob@localhost ~]$ pkill -u bob $(pgrep -u bob) pkill: only one pattern can be provided Try `pkill --help' for more information.
Which makes sense because you can't have newlines in usernames, right?
I think the command should only be:
pkill -u bob
To "kill all processes owned by bob"
While the command:
pgreg -u bob
Gives "all processes owned by bob"
I'm wondering:
- Am I uses the right commands as intended?
- Is my analysis of the incorrect way accurate?
-
Pankaj Goyal almost 7 yearsalternatively,
killall -u bob
. -
Wieland almost 7 yearsNot relevant on CentOS, but if you're ever on a Solaris machine,
killall
on there really just kills all processes, no patterns or anything.