Vultr新用户优惠活动

使用SHELL脚本守护进程

  目前在使用的一些程序,程序不是特别稳定,有时候会崩溃,所以需要一个守护程序,重启应用,于是写了这个守护脚本,可以检测程序是否启动了,如果没有启动就执行脚本将应用启动;

#!/bin/bash
# 自动检测应用程序是否启动,如果未启动则启动成程序
# 版本 V 0.1 
# 作者:艾克斯记事
HBTIME=1m # 心跳检测时间1分钟
PROGRAM="应用1" # 目标程序
PROGRAM2="应用2" # 目标程序

checkStatus(){
	PID=`pgrep $1`
	if [ -n "$PID" ]
		then return 0
	else
		return 1
	fi
} 

while : #无限循环
do
	# 如果程序未启动则启动
	RTIME=$(date "+%Y-%m-%d %H:%M:%S")
	#程序1
	if checkStatus $PROGRAM
		then echo "$RTIME - $PROGRAM 正在运行,无需操作" >>/data/tool/shell/$PROGRAM.log
	else
		echo "$RTIME - $PROGRAM 程序未启动,正在执行脚本,已启动程序" >>/data/tool/shell/$PROGRAM.log
		启动脚本
	fi
	#程序2
	if checkStatus $PROGRAM2
	then echo "$RTIME - $PROGRAM2 正在运行,无需操作" >>/data/tool/shell/$PROGRAM2.log
	else
		echo "$RTIME - $PROGRAM2 程序未启动,正在执行脚本,已启动程序" >>/data/tool/shell/$PROGRAM2.log
		启动脚本
	fi
	#心跳间隔
	sleep $HBTIME
done

后台运行脚本程序:

chmod +x shell.sh 
./shell.sh &

版权所有©艾克斯记事-转载文章请注明出处(带链接)

发表评论

电子邮件地址不会被公开。 必填项已用*标注