linux杀掉所有子进程,shell脚本杀掉指定进程下所有子进程(包括子进程的子进程)...

本文将为您描述shell脚本杀掉指定进程下所有子进程(包括子进程的子进程),教程操作方法:

搜索了网上好像并没有杀掉指定进程下所有子进程(包括子进程的子进程)的脚本,自己琢磨写了一版,虽说比较简单,但希望分享大家,帮助需要的人

#!/bin/sh

# 递归找到进程最底层子进程并杀除.

mainName=$1

echo "=====开始====="

#grep -v可以过滤掉grep的进程,但测试时有时会出现问题,所以加上获取第一行

mainId=`ps -ef |grep ${mainName}|grep -v 'grep' |head -1|cut -c 9-15`#也可以使用这种方法获取查出的第一个参数#mainId=`ps -A |grep ${mainName}|awk '{print $1}'`

#去掉空格

mainId=`echo ${mainId}|sed 's/ //g'`

echo "mainId===${mainId}"

#查主进程下所有子进程 格式为main.sh(275)---children1.sh(27641)---sleep(27643)

pidLine=`pstree -p ${mainId}`

echo "pidLine===pidLine${pidLine}"

#取括号中的内容

pidLine=`echo $pidLine | awk 'BEGIN{ FS="(" ; RS=")" } NF>1 { print $NF }'`

#echo $pidLine

for pid in $pidLine

do

echo "kill -9 ${pid}"

kill -9 ${pid}

done

shell脚本杀掉指定进程下所有子进程(包括子进程的子进程)就为您介绍到这里,感谢您关注懒咪学编程c.lanmit.com.

本文地址:https://c.lanmit.com/czxt/Linux/866.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值