码迷,mamicode.com
首页 > 其他好文 > 详细

tomcat的备份脚本

时间:2019-03-02 14:52:16      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:修改   不一致   date   时区   2-2   rda   备份脚本   帮助   notify   

reference:Crontab的20个例子

 

先科普一下date的使用方法,在sh脚本中经常会使用得到

date

-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;
-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;
-u:显示GMT;
--help:在线帮助;
--version:显示版本信息。
 
%H 小时,24小时制(00~23)
%I 小时,12小时制(01~12)
%k 小时,24小时制(0~23)
%l 小时,12小时制(1~12)
%M 分钟(00~59)
%p 显示出AM或PM
%r 显示时间,12小时制(hh:mm:ss %p)
%s 从1970年1月1日00:00:00到目前经历的秒数
%S 显示秒(00~59)
%T 显示时间,24小时制(hh:mm:ss)
%X 显示时间的格式(%H:%M:%S)
%Z 显示时区,日期域(CST)
%a 星期的简称(Sun~Sat)
%A 星期的全称(Sunday~Saturday)
%h,%b 月的简称(Jan~Dec)
%B 月的全称(January~December)
%c 日期和时间(Tue Nov 20 14:12:58 2012)
%d 一个月的第几天(01~31)
%x,%D 日期(mm/dd/yy)
%j 一年的第几天(001~366)
%m 月份(01~12)
%w 一个星期的第几天(0代表星期天)
%W 一年的第几个星期(00~53,星期一为第一天)
%y 年的最后两个数字(1999则是99)
 
在输出中如果要有空格,后面的格式语句必须是双引号包括的,不能是{}大括号
date +"%Y-%m-%d %H:%M"  输出:  2019-02-22 15:45
date +{%Y-%m-%d %H:%M}  就会报错:date: extra operand ‘%H:%M}’
 
crontab –e  输入下面的计划,每天20点备份上传一次tomcat log文件

0 20 * * * /home/ec2-user/backuptomcat.sh >>/home/ec2-user/backtomcat.log

检查发现到时间没起作用,查看crond日志

[ec2-user@ip-172-31-27-98 ~]$ tail -F /var/log/cron
Feb 22 14:01:01 ip-172-31-27-98 run-parts(/etc/cron.hourly)[8878]: finished 0anacron
Feb 22 14:01:49 ip-172-31-27-98 crontab[8885]: (ec2-user) BEGIN EDIT (ec2-user)
Feb 22 14:02:09 ip-172-31-27-98 crontab[8885]: (ec2-user) END EDIT (ec2-user)
Feb 22 14:02:43 ip-172-31-27-98 crontab[8889]: (ec2-user) BEGIN EDIT (ec2-user)
Feb 22 14:03:08 ip-172-31-27-98 crontab[8889]: (ec2-user) REPLACE (ec2-user)
Feb 22 14:03:08 ip-172-31-27-98 crontab[8889]: (ec2-user) END EDIT (ec2-user)
Feb 22 14:03:13 ip-172-31-27-98 crontab[8893]: (ec2-user) LIST (ec2-user)
Feb 22 14:04:01 ip-172-31-27-98 crond[4057]: (ec2-user) RELOAD (/var/spool/cron/ec2-user)
Feb 22 14:11:49 ip-172-31-27-98 crontab[8918]: (ec2-user) BEGIN EDIT (ec2-user)
Feb 22 14:11:58 ip-172-31-27-98 crontab[8918]: (ec2-user) END EDIT (ec2-user)
:q
^C
[ec2-user@ip-172-31-27-98 ~]$ date
Fri Feb 22 22:12:15 CST 2019

原来我之前把服务器的时区修改了,但是没有出去crond,导致crond还是以旧时区运行。重启crond:

[ec2-user@ip-172-31-27-98 ~]$ sudo service crond restart
Redirecting to /bin/systemctl restart crond.service
[ec2-user@ip-172-31-27-98 ~]$ tail -F /var/log/cron
Feb 22 14:03:08 ip-172-31-27-98 crontab[8889]: (ec2-user) REPLACE (ec2-user)
Feb 22 14:03:08 ip-172-31-27-98 crontab[8889]: (ec2-user) END EDIT (ec2-user)
Feb 22 14:03:13 ip-172-31-27-98 crontab[8893]: (ec2-user) LIST (ec2-user)
Feb 22 14:04:01 ip-172-31-27-98 crond[4057]: (ec2-user) RELOAD (/var/spool/cron/ec2-user)
Feb 22 14:11:49 ip-172-31-27-98 crontab[8918]: (ec2-user) BEGIN EDIT (ec2-user)
Feb 22 14:11:58 ip-172-31-27-98 crontab[8918]: (ec2-user) END EDIT (ec2-user)
Feb 22 14:13:42 ip-172-31-27-98 crond[4057]: (CRON) INFO (Shutting down)
Feb 22 14:13:42 ip-172-31-27-98 crond[8944]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 54% if used.)
Feb 22 14:13:42 ip-172-31-27-98 crond[8944]: (CRON) INFO (running with inotify support)
Feb 22 14:13:42 ip-172-31-27-98 crond[8944]: (CRON) INFO (@reboot jobs will be run at computer‘s startup.)

还是不行,网上搜索,解决办法参考:crontab执行时区与系统时间不一致问题

可能是rsyslog日志服务没有重启,那就重启rsyslog,然后再重启crond,问题解决

[root@ip-172-31-27-98 ec2-user]# service rsyslog restart
Redirecting to /bin/systemctl restart rsyslog.service
[root@ip-172-31-27-98 ec2-user]# service crond restart
Redirecting to /bin/systemctl restart crond.service
[root@ip-172-31-27-98 ec2-user]# exit
exit
[ec2-user@ip-172-31-27-98 ~]$ tail -F /var/log/cron
Feb 22 14:13:57 ip-172-31-27-98 crontab[8947]: (ec2-user) LIST (ec2-user)
Feb 22 14:14:37 ip-172-31-27-98 crond[8944]: (CRON) INFO (Shutting down)
Feb 22 14:14:49 ip-172-31-27-98 crond[8999]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 26% if used.)
Feb 22 14:14:49 ip-172-31-27-98 crond[8999]: (CRON) INFO (running with inotify support)
Feb 22 14:14:49 ip-172-31-27-98 crond[8999]: (CRON) INFO (@reboot jobs will be run at computer‘s startup.)
Feb 22 14:15:22 ip-172-31-27-98 crontab[9003]: (ec2-user) LIST (ec2-user)
Feb 22 22:16:15 ip-172-31-27-98 crond[8999]: (CRON) INFO (Shutting down)
Feb 22 22:16:15 ip-172-31-27-98 crond[9058]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 91% if used.)
Feb 22 22:16:15 ip-172-31-27-98 crond[9058]: (CRON) INFO (running with inotify support)
Feb 22 22:16:15 ip-172-31-27-98 crond[9058]: (CRON) INFO (@reboot jobs will be run at computer‘s startup.)

tomcat的备份脚本

标签:修改   不一致   date   时区   2-2   rda   备份脚本   帮助   notify   

原文地址:https://www.cnblogs.com/daxi33/p/10461025.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!