编程判断是否进程分钟

linux shell编程,先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程才运行

服务器技术 2020-09-23 07:58:57 43

导读

crontab每分钟执行一次,但5秒以上才有更新数据,有时候一分钟可能跑不完上一个进程,需要先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程(有没有在都执行杀进程的命令)才运行,超过20秒没有执行完成就判断为假死异常了,需要删掉再继续运行。这样各种情况都考虑到……

crontab每分钟执行一次,但5秒以上才有更新数据,有时候一分钟可能跑不完上一个进程,需要先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程(有没有在都执行杀进程的命令)才运行,超过20秒没有执行完成就判断为假死异常了,需要删掉再继续运行。这样各种情况都考虑到了。

#!/bin/sh
sleep 10
PID=`ps aux | grep lstm_prob.py | awk '{print $2}'`

if [ -n "$PID" ]; then
    sleep 10
    ps -ef|grep -v grep|grep lstm_prob.py |awk '{print "kill -9 "$2}'|sh
fi

cd /root/tf/
nohup /usr/local/bin/python3.6 lstm_prob.py >nohup.out 2>&1 &


1253067 TFnetwork_cn