Answers:
在这种情况下,这非常简单,您可以使用它killall
立即杀死或发送任何其他信号给一堆进程。所有者是“过滤”选项之一:killall --user name1
--user
争论,谢谢!
killall
,例如在Solaris Unix中,它可以杀死所有正在运行的进程!参见:en.wikipedia.org/wiki/Killall
添加另一个选项是因为没有人提及它,我也不喜欢killall
(在solaris上使用它可能会导致灾难)。
pkill
更便携
pkill -u username
killall
在Ubuntu中找不到,但是pkill
已经安装了。
确定用户,然后 killall -user <username>
他们将有一个与登录会话终止相关的bash(或类似)进程,该进程将终止其会话。
为了更好地了解用户的操作,请尝试 pstree <username>
--user
安装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
awk
可以本身grep的东西。无需做grep smth | awk
,因为您可以awk '/smth/{...}'
改用。
killuser () { ps faux| awk -v user=$1 '$1==user{ system("kill -9 " $2) }' ;};