Linux下批量杀死进程xargs

想必很多时候我们会遇到,进程使用后,服务器没有释放改进程而开启新进程的情况。比如,java中,进程启动多个:

当然,下面的worker和logwriter并没有错误,这里是演示:

hadoop@hadoop9:~$ jps
18322 Jps
3891 Supervisor
1860 Elasticsearch
18118 worker
17383 worker
17384 worker
18121 worker
18074 LogWriter
18077 LogWriter
17341 LogWriter
17343 LogWriter
3775 QuorumPeerMain

我们如果需要杀死worker进程,按照以往的方法,我们需要kill掉4次worker的进程号

hadoop@hadoop9:~$ kill 18118

这样在进程足够多的情况下,势必会浪费很多时间在一件事情上,所以,使用下面方法批量kill进程:

jps和grep使用,提取所以worker进程

hadoop@hadoop9:~$ jps | grep worker
18118 worker
17383 worker
17384 worker
18121 worker

提取进程号:

hadoop@hadoop9:~$ jps | grep worker | awk -F" " '{print $1}'
18118
17383
17384
18121

使用xargs批量kill进程:

hadoop@hadoop9:~$ jps | grep worker | awk -F" " '{print $1}' | xargs kill

小伙伴们,有没有学到这个很适用的技巧呢?

批量kill进程就到这里了

完!

你可能感兴趣的:(Linux)