(shell 脚本)通过 kill -9 进程名 的方式停止某一个进程 (使用grep awk过滤并获取)

通过awk过滤线程名,然后进行后续操作

需求

通过 "kill -9 进程名 " 的方式停止某一个进程
那么需要知道进程名 这里使用awk的方式过滤进程名.

思路

举例: 想对使用logserver-flume-kafka.conf配置文件的flume-java进程进行操作;
第一步
使用命令: ps -ef | grep logserver-flume-kafka.conf
发现有2个进程
()
在这里插入图片描述
第一个1249 是java进程,也就是我们需要操作的
第二个是 ps -ef 本身的命令 我们需要过滤的
第二步
ps -ef | grep logserver-flume-kafka.conf | grep -v grep
所以在加grep -v grep 过滤掉grep
在这里插入图片描述

第三步
ps -ef | grep logserver-flume-kafka.conf | grep -v grep | awk ‘{print $2}’ | xargs -n1 kill -9
就可以杀死了
awk 默认按照空格切 ‘print $2’ 表示打印第二个
xargs表示 传参 把前面的结果往后面的命令参数 -n1 表示每次传第1个参数
在这里插入图片描述

总结

ps -ef | grep logserver-flume-kafka.conf | grep -v grep | awk ‘{print $2}’ | xargs -n1 kill -9 使用这个命令

注意在脚本中 要对 $2进行转义 加上\ 否则认为是第二个参数

第二种方法 直接使用 awk的过滤 不用grep

ps -ef | awk ‘/logserver-flume-kafka.conf/ && !/awk/ {print $2}’ | xargs -n1 kill -9
在这里插入图片描述
部分截图

ps -ef | awk ‘/logserver-flume-kafka.conf/’
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值