Linux常用命令:xargs,批量杀死进程

有一天,后台的一个定时脚本异常了,由于网络原因导致超时,而且每分钟一个进程。

ps aux | grep main.py 看了所有的进程,试图手动kill掉,可是几十个进程手动kill得累趴去。

root@ubuntu:/home/fage/Desktop/linux-perf-examples/nginx-high-cpu# ps aux | grep main.py
root      13110  0.0  0.3  32636  6664 pts/0    S    23:17   0:00 python main.py
root      13115  0.0  0.3  32636  6632 pts/0    S    23:17   0:00 python main.py
root      13116  0.0  0.3  32636  6572 pts/0    S    23:17   0:00 python main.py
root      13117  0.0  0.3  32636  6652 pts/0    S    23:17   0:00 python main.py
root      13118  0.0  0.3  32636  6592 pts/0    S    23:17   0:00 python main.py
root      13119  0.0  0.3  32636  6552 pts/0    S    23:17   0:00 python main.py
root      13120  0.0  0.3  32636  6484 pts/0    S    23:18   0:00 python main.py
root      13121  0.0  0.3  32636  6696 pts/0    S    23:18   0:00 python main.py
root      13122  0.0  0.3  32636  6424 pts/0    S    23:18   0:00 python main.py
root      13123  0.0  0.3  32636  6480 pts/0    S    23:18   0:00 python main.py
root      13124  0.0  0.3  32636  6584 pts/0    S    23:18   0:00 python main.py
root      13125  0.0  0.3  32636  6592 pts/0    S    23:18   0:00 python main.py
root      13126  0.0  0.3  32636  6520 pts/0    S    23:18   0:00 python main.py

这时我们的主角就要登场了
ps axu | grep main.py | awk '{print $2;}' | xargs kill -9

xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。

xargs 默认的命令是 echo,这意味着通过管道传递给 xargs 的输入将会包含换行和空白,不过通过 xargs 的处理,换行和空白将被空格取代。如:

root@ubuntu:/home/fage/Desktop# cat test.txt 
lkjafd
askfj
asdfj asdj asjf
asdfj asj sldfj 
adfklj asdjklasjf asfj

root@ubuntu:/home/fage/Desktop# cat test.txt | xargs
lkjafd askfj asdfj asdj asjf asdfj asj sldfj adfklj asdjklasjf asfj

https://www.runoob.com/linux/linux-comm-xargs.html

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值