#! /bin/bash
while [ true ]
do
pro=`ps -ef | grep ""sendEmailRedis | grep -v 'grep' | wc -l`
#过滤出目标进程信息,如果pro为空串说明目标进程未运行
#反向过滤掉grep进程 和 本进程信息, 因为这两个进程信息中包含目标进程的名字
if [ "$pro" -eq 0 ]
then
echo "程序未启动,重新启动程序"
/www/server/php/56/bin/php /www/wwwroot/www.lovelywolf.com/public/index.php sendEmailRedis & #重新启动指定程序
else
echo "程序正在运行..."
fi
sleep 5
done
然后执行后台挂起 执行脚本
nohup sh monitor_email.sh &