linux shell编程,先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程才运行
crontab每分钟执行一次,但5秒以上才有更新数据,有时候一分钟可能跑不完上一个进程,需要先等10秒再判断是否有进程存在,存在就再等10秒再杀了进程(有没有在都执行杀进程的命令)才运行,超过20秒没有执行完成就判断为假死异常了,需要删掉再继续运行。这样各种情况都考虑到了。
#!/bin/sh
sleep
PID=`ps aux | grep lstm_prob.py | awk '{print $2}'` if [ -n "$PID" ]; then
sleep
ps -ef|grep -v grep|grep lstm_prob.py |awk '{print "kill -9 "$2}'|sh
fi cd /root/tf/
nohup /usr/local/bin/python3. lstm_prob.py >nohup.out >& &