进程监测与进程强制kill脚本

 

SHELL连续强制KILL某进程脚本

#!/bin/sh

echo "">/tmp/.history_kill.log
count_ok=0
count_err=0

while :
do
    ps -fe|grep 进程名|grep -v grep >/dev/null
    if [ $? -eq 0 ]; then
        ps -efww|grep 进程名|grep -v grep|cut -c 0-6|xargs kill -9
        count_ok=$(($count_ok+1))
        echo "[`date`] OK times($count_ok) Msg:Kill process OK!">>/tmp/.history_kill.log
    else
        count_err=$(($count_err+1))
        echo "[`date`] Failed times($count_err) Err:process not found!">>/tmp/.history_kill.log
    fi
    sleep 5
done

功能描述:每隔5S强制kill进程名的进程,并对成功与失败进行日志记录。

 

SHELL连续监测进程并强制拉起进程脚本

#!/bin/sh

value=0
while :
do
    ps -fe|grep 进程名|grep -v grep >/dev/null
    if [ $? -ne 0 ]; then
        value=$(($value+1))
        if [ $value = 3 ]; then
            执行进程 &
            value=0
        fi
    else
        value=0
    fi
    sleep 1
done

功能描述:每隔1S监测进程是否存在,如果连续3秒都不存在,即将其后台执行。

你可能感兴趣的:(shell)