kill -9 xxx重定义killall xxx

killall abcxx

方法一

使用ps -N命令查找指定进程,然后使用grep $1将查找结果保存到tmptmptmp文件中,接着使用awk ‘{print $1}’ tmptmptmp命令获取进程的PID,最后使用kill -9 $tmp命令杀死指定的进程。
在这里插入图片描述

#!/bin/sh
echo "Killall Shell"
if [ ! $1 ];
then
        echo "try again,please must input progress name"
        return
fi
echo "progress name is: $1"

ps -N |grep $1 >tmptmptmp

tmp=$(awk '{print $1}' tmptmptmp)# 从tmptmptmp文件中获取第一列的内容,并将其保存到tmp变量中

kill -9 $tmp

rm tmptmptmp

方法二

使用grep命令搜索指定进程名($progressname),然后使用grep -v grep和grep -v bash过滤掉grep和bash进程,最后使用awk命令获取进程的PID($1),并将其存储在变量pid中。

#!/bin/sh
echo "Killall Shell"
if [ ! $1 ];
then
        echo "try again,please must input progress name"
        return
fi
echo "progress name is: $1"

progressname=$1
pid=$(ps x | grep $progressname | grep -v grep | grep -v bash | awk '{print $1}')# 从输入的文本中提取第一个字段,并将其打印出来
echo "pid is $pid"
kill -9 $pid

存放在/usr/bin/

猜你喜欢

转载自blog.csdn.net/qq_47355554/article/details/128785088
xxx