因为项目需要有脚本不停的处理队列信息,所以需要监控脚本是否停止了,如果停止则需要再次启动。于是写了个脚本
#! /bin/bash cd /data/www/xs8.cn/app.xs8.cn/shell/ #脚本所在目录 F=(CHANGE_USER_TICKET.php CHANGE_USER_LEVEL.php USER_COST.php) #需要监控的脚本文件名 L=(log_ticket log_level log_cost) #脚本对应的日志文件 for((i=0;i<${#F[@]};i++));do n=`ps aux|grep ${F[$i]}|grep -v grep|wc -l`; if(($n < 1));then nohup /usr/bin/php ${F[$i]} >> ${L[$i]} 2>&1 & fi done;
然后将其写入crontab,每10分钟执行
*/10 * * * * /bin/bash /opt/sbin/check_shell.sh > /dev/null 2>&1