Shell脚本查询进程存活信息

脚本代码如下:

pid=`cat $2`

function status_job(){
    pcount=`ps -ef |grep $pid |grep -v grep |wc -l`
    if [ $pcount -ge 1 ]
    then
        pids=`ps -ef | grep "EntryPoint" | grep -v grep | awk '{print $2}'`
        arr=$(echo $pids|tr " " "\n")
        for x in $arr ; do
            if [ "$x" == $pid  ] ; then
                echo "任务还在运行..."
            fi
        done
    fi
}

function kill_job(){
  kill -9 $pid
}

if [ "$1" == "status" ]
then
    status_job
fi

if [ "$1" == "kill" ]
then    
    kill_job
fi

  

其中:grep -v grep 显示查询结果中m没有匹配grep的行,即过滤到grep搜索进程的进程id,wc -l是判断包含该进程id的进程有几个,之后再借助进程id进程匹配。 

 

再例如:

 history | grep "mysql" |grep  -v "netstat"

  

查看历史运行过的命令中包含mysql但是不包含netstat的所有历史命令

 

转载于:https://www.cnblogs.com/leodaxin/p/9222969.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值