Welcome 微信登录

首页 / 操作系统 / Linux / 使用awk批量杀进程的命令

在做系统运维的过程中,有时候会碰到需要杀掉某一类进程的时候,如何批量杀掉这些进程,使用awk命令是很好的选择。ps -ef|grep aaa|grep -v grep|awk  "{print "kill -9 " $2}" |sh1. ps -ef|grep aaa|grep -v grep 这是大家很熟悉的命令,这里就不再多说,就是从当前系统运行的进程的进程名中包含aaa关键字的进程。2. 后面部分就是awk命令了,一般awk命令的格式为:awk " pattern {action} "print是打印,kill -9 是强制停止进程的命令, $2就是前面有ps -ef命令得出的结果的第二列上显示的内容。下面举一个简单的例子:[PD_APP1:/home/tbcs]#ps -ef|grep boco|grep -v grep
    root  9884  9883  0 17:10:01 ?       0:00 sendmail -oem -oi -froot boco
    root  9883  9880  0 17:10:01 ?       0:00 /usr/bin/mail boco
    boco 11112   1  0  Dec 24  ?       0:00 ./boco_appmaster -d /home/boco/agent
    boco 11126 11125 61  Dec 24  ?        52:59 ./boco_hostagent -i socket -l
    boco 11125 11112 37  Dec 24  ?        43:25 ./boco_appmaster -d /home/boco/agent
    boco  9811 11113  0 17:09:31 ?       0:00 sleep 60
    boco 11113   1  0  Dec 24  ?       0:23 /bin/sh ./boco_monitor.sh
[PD_APP1:/home/tbcs]#ps -ef|grep boco|grep -v grep|awk "{print "kill -9 "$2}"
kill -9 9884
kill -9 9883
kill -9 11112
kill -9 11126
kill -9 11125
kill -9 9811
kill -9 11113我们可以看出,ps -ef|grep boco|grep -v grep列出了当前主机中运行的进程中包含boco关键字的进程而ps -ef|grep boco|grep -v grep|awk "{print "kill -9 "$2}"则列出了要kill掉这些进程的命令,并将之打印在了屏幕上在ps -ef|grep boco|grep -v grep|awk "{print "kill -9 "$2}"后面加上|sh后,则执行这些命令,进而杀掉了这些进程。AWK简介及使用实例 http://www.linuxidc.com/Linux/2013-12/93519.htmAWK 简介和例子 http://www.linuxidc.com/Linux/2012-12/75441.htmShell脚本之AWK文本编辑器语法 http://www.linuxidc.com/Linux/2013-11/92787.htm正则表达式中AWK的学习和使用 http://www.linuxidc.com/Linux/2013-10/91892.htm文本数据处理之AWK 图解 http://www.linuxidc.com/Linux/2013-09/89589.htm如何在Linux中使用awk命令 http://www.linuxidc.com/Linux/2014-10/107542.htm文本分析工具-awk  http://www.linuxidc.com/Linux/2014-12/110939.htm本文永久更新链接地址