为什么要使用这个脚本
一般我们在linux上面部署程序,可能会由于某些原因导致程序强制停掉,而我们又不想让程序停掉,如果发生停掉就想着让他自己重新启动,我们不用手动再登录linux终端,然后通过命令启动,目前就是为了减少时间,所以我们需要开启linux定时任务来执行启动脚本
Crontab(定时任务)
crontab命令用于设置周期性被执行的命令,适用于日志备份,清理缓存,健康状态检测等场合。
linux开启定时任务
crontab -e 会打开一个文本编辑器,按“i”键进入编辑模式,填写具体任务计划
crontab -l //列出当前的所有调度任务
crontab -l -u test //列出用户test的所有调度任务
crontab -r //删除所有任务调度工作
service crond restart //重启服务
示例:
10 * * * * root echo “123” #每个小时的十分都以root用户的身份执行echo命令
10 2 * * * root /etc/a.sh #每天2:10以root用户身份执行脚本a.sh(前提是a.sh有执行权限)
10 2 5,6,7 * * root /etc/a.sh #每月的5,6,7号的2:10以root身份执行a.sh脚本
监听应用并启动脚本代码
#!/bin/bash
time=`date +%Y-%m-%d-%H:%M`
echo "app-Script start time" $time >> /home/listen_port/listen_port.log
app=`netstat -pltun |grep 8080 |wc -l`
def_app()
{
if [ $app -eq 0 ];then
echo "停止运行了,停止的时间是 " $time >> /home/listen_port/listen_port.log
cd /opt/idc/apps/ceshi/
./startup.sh >> /home/listen_port/app
fi
}
def_app
time1=`date +%Y-%m-%d-%H:%M`
echo "执行结束时间:" $time1 >> /home/listen_port/listen_port.log
#!/bin/bash是指此脚本使用/bin/bash来解释执行。
其中,#!是一个特殊的表示符,其后,跟着解释此脚本的shell路径。
bash只是shell的一种,还有很多其它shell,如:sh,csh,ksh,tcsh,…
© 版权声明
本站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!
THE END