进程和子进程脚本命令"/>
杀死父进程和子进程脚本命令
##! @TODO: 结束指定进程及其派生出的所有进程##! @IN: $1 => 进程pid
##! @OUT: 0 => success; 1 => failed
function recursive_kill()
{
local pids=(`ps -ef | awk '{if($3 == ppid){print $2;}}' ppid=$1`)
#echo "${#pids[@]} : ${pids[@]}"
if [[ -z ${pids} ]]
then
#echo "kill child process $1"
sudo kill -9 $1
if [ $? -ne 0 ]
then
return 1
fi
return 0
else
for child in ${pids[@]}
do
#echo "recursive_kill ${child}"
recursive_kill ${child}
done
local count=`ps -ef | grep $1 | grep -v "grep" | wc -l`
if [ ${count} -eq 0 ]
then
return 0
fi
#echo "kill process $1"
sudo kill -9 $1
if [ $? -ne 0 ]
then
return 1
fi
fi
return 0
}
更多推荐
杀死父进程和子进程脚本命令
发布评论