杀掉多个进程的方法
警告:
批量杀死Linux系统中的进程是高危操作,所以务必仔细检查和灰度
找出某个用户的进程进行kill
ps 命令提供了输出字段过滤功能,例如需要找出 huatai 用户的进程:
ps -o pid= -u huatai此时只会显示该用户的进程pid(无需awk),所以我们可以进一步使用 xargs 进行管道命令处理(kill)
ps o pid= -u huatai | xargs kill这样系统中所有 huatai 用户的进程都会被杀死
killall命令
killall 命令提供了更为简单的杀死所有进程的方法,默认发送 SIGTERM 信号:
- -I忽略大小写
- -i交互模式,在杀死每个进程前进行确认
- -o只杀死比指定时间更早(older)的进程
- -y只杀死比指定时间更晚(younger)的进程
- -r使用规则选择进程
举例:
- 杀死1周前的apache2进程,杀死前交互确认: 
killall -io 1w apache2- 如果使用 - SIGTERM不能杀掉进程,则使用- kill -9方式:
killall -9 -io 1w apache2pgrep和pkill
pgrep 会列出所有匹配的进程pid,而 pkill 则杀死所有匹配的进程:
pgrep apache2批量杀死
pkill apache2参考
Last updated
Was this helpful?