如何在unix上快速停止一堆进程?

8 linux shell process kill

如何在 Unix 上快速停止一堆进程。

我可以使用ps/ top, kill.

如果进程数非常多,我使用shell脚本。有没有其他方法,只有一两个unix命令可以做好?

Pri*_*ley 10

我的选择是 pkill/pgrep


小智 3

这是我使用的一个在线 bash 脚本:

ps auxwww | grep -v grep | grep -i $1 | awk '{print $2}' | xargs kill -9
Run Code Online (Sandbox Code Playgroud)

我杀死名称包含第一个参数(不区分大小写)的所有进程。各部分的细分如下:

  • ps auxwww打印具有非常宽的“命令”字段的所有进程
  • grep -v grep是否有将自己排除在杀戮之外
  • grep -i $1匹配包含第一个参数的所有行
  • awk '{print $2}'获取所有进程 ID
  • xargs kill -9杀死所有选定的进程

  • 与“pkill -9 -f $1”相比,该脚本过于复杂。另外,不建议使用信号 9 (KILL)。这是停止进程的最后手段,不应该常规使用。 (8认同)