使用awk批量杀进程的命令

在做系统运维的过程中,有时候会碰到需要杀掉某一类进程的时候,如何批量杀掉这些进程,使用awk命令是很好的选择。

ps -ef|grep aaa|grep -v grep|awk  '{print "kill -9 " $2}' |sh

1. 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后,则执行这些命令,进而杀掉了这些进程。

转载于:https://www.cnblogs.com/haoshikui/archive/2011/12/29/2306434.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值