自己用crontab弄个定时任务备份日志重启项目

项目久了就会出现很多日志,如果不清理就会占用很大的空间,今天就记录下自己在系统弄的第一个定时任务。

要完成这个定时任务需要两方面的知识:

  1.写出一个日志备份的脚本;

  2.用crontab命令设置一个定时任务来执行脚本。

首先可以写一个测试的脚本试一下,这里提供一个重启项目的脚本供参考:

#!/bin/sh
#--------------------
#---自动化脚本-----
#-----------------
TOMCAT_PATH=/home/fssc/tomcat-EAS/bin
echo "开始执行定时器任务"
echo "ps -ef|grep tomcat-EAS"
jobid=$(ps -ef|grep 'tomcat-EAS' | grep java | awk '{print $2}')
echo $jobid
kill -9 $jobid
echo "睡一会5.4.3.2.1.."
sleep 5
echo "重启服务..."
sh /home/fssc/tomcat-EAS/bin/startup.sh
echo "定时任务结束end......."                  

crontab命令使用:

crontab -l:查看是否有定时任务;

crontab -e:编辑一个定时任务;

案例: 10 23 * * * sh /home/fssc/restart.sh  每晚十一点10分执行

 

遇到的问题:

1.脚本执行出错

写出脚本之后可以先用sh命令运行下,比如只写输出的逻辑,先保证脚本能正常运行后再开始定时任务。

2.脚本没权限执行。

给使用这增加可执行权限,chmod 777 restart.sh

 

 

 如果希望其他角色也能执行也可以增加权限,chmod o+x,u+x

 

 

 3.怎么看定时任务是否执行成功

如果脚本中有输出的语句,可以直接看工具的图形界面。

如果没看到,可以查看执行结果邮件。

邮件会发送到当前用户下,地址是 /var/spool/mail/当前用户名

通过cat /var/spool/mail/当前用户名就可以看到执行的记录。

 

 

 

完毕。

 

posted @ 2019-12-04 09:58  疯狂电脑  阅读(450)  评论(0编辑  收藏  举报