欧阳简之 > Linux批量杀死多个进程

热爱代码,对每一行代码保持一颗敬畏之心。

ps -ef | grep index.php | grep -v grep | cut -c 9-15 | xargs kill -9

管道符"|"用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。

说明

  • "ps - ef"是Red Hat里查看所有进程的命令。这时检索出的进程将作为下一条命令"grep index.php"的输入

  • "grep index.php"的输出结果是,所有含有关键字"index.php"的进程

  • "grep -v grep"是在列出的进程中去除含有关键字"grep"的进程

  • "cut -c 9-15"是截取输入行的第9个字符到第15个字符,而这正好是进程号PID

  • "xargs kill -9"中的xargs命令是用来把前面命令的输出结果(PID)作为"kill -9"命令的参数,并执行该令。

  • "kill -9"会强行杀掉指定进程,这样就成功清除了含"index.php"的所有进程。其它类似的任务,只需要修改"grep
    index.php"中的关键字部分就可以了

killall

也可以使用killall命令,如杀死nginx相关进程:killall nginx

tagged by none