一条命令完成Linux下批量杀死某应用程序相关的进程

一、背景

很多时候我们需要迅速杀死某运用程序相关的全部进程,但是又不能杀死某个与该应用程序的特定进程,怎么办呢?结合前一段时间学习的awk及grep,让我们来实践一下吧!

二、实际操作

目前我需要杀死sftp相关的进程,但是不能杀死与grep相关的进程,命令写法如下:

kill -9 $(ps -ef|grep sftp|grep -v grep|awk '{print $2}')

kill -9 `ps -ef|grep sftp|grep -v grep|awk '{print $2}'`

三、命令解释

  1. kill -9 :强制杀死,可能不太准确!
  2. grep:从标准输出中找到,-v表示反选。
  3. awk ‘{print $2}’:把标准输出中的每一行第二个字段打印出来。
  4. $(ps -ef|grep sftp|grep -v grep|awk ‘{print $2}’):取标准输出的值作为进程id。

猜你喜欢

转载自blog.csdn.net/solaraceboy/article/details/79572073