杀死 Ubuntu 中特定用户的所有进程?

杀死 Ubuntu 中特定用户的所有进程?

如何杀死一个用户的所有进程?

例如,当我制作时ps aux,我获得了具有多个用户的进程列表,并且我想杀死用户的所有进程。name1在 Ubuntu 中执行此操作的命令是什么?

答案1

在这种情况下,它非常简单,您可以用来killall立即终止或发送任何其他信号到一堆进程。 “过滤”选项之一是所有者:killall --user name1

答案2

添加另一个选项,因为没有人提到它,而且我不喜欢killall(在Solaris 上使用它可能会导致灾难)。

pkill更便携

pkill -u username

答案3

安装slay

aptitude 安装 slay

然后发出slay some-user.

请注意,如果您为不知道目的的用户删除某些内容,则可能会导致您的计算机无法使用(直到重新启动)。

如果你真的不想安装 slay:

ps -e -o user,pid | grep '^some-user ' | awk '{ print $2 }' | xargs kill

(稍等一会)

ps -e -o user,pid | grep '^some-user ' | awk '{ print $2 }' | xargs kill -9

答案4

根据man kill

kill -9 -1
    Kill all processes you can kill.

要将其应用到不同的用户:

su -l username kill -9 -1

相关内容