use*_*992 31 command-line process ubuntu
如何杀死一个用户的所有进程?
例如,当我让ps aux
我获得多个用户的进程列表时,我想杀死 user 的所有进程name1
。在 Ubuntu 中执行此操作的命令是什么?
njs*_*jsg 34
在这种情况下,它非常简单,您可以使用一次killall
杀死或发送任何其他信号到一堆进程。“过滤”选项之一是所有者:killall --user name1
phe*_*mer 22
添加另一个选项,因为没有人提到它,而且我不喜欢killall
(在solaris 上使用它会导致灾难)。
pkill
更便携
pkill -u username
Run Code Online (Sandbox Code Playgroud)
安装slay
:
aptitude 安装 slay
然后发出slay some-user
.
请注意,如果您为不知道其目的的用户删除某些内容,则可能会导致您的计算机无法使用(直到您重新启动)。
如果你真的不想安装 slay:
ps -e -o user,pid | grep '^some-user ' | awk '{ print $2 }' | xargs kill
Run Code Online (Sandbox Code Playgroud)
(稍等一会)
ps -e -o user,pid | grep '^some-user ' | awk '{ print $2 }' | xargs kill -9
Run Code Online (Sandbox Code Playgroud)