记录学习过程中的点点滴滴
crontab
定时备份网站代码与数据的shell工具
四 12th
需求
鉴于国内网络环境的恶劣,本人的blog的托管在国外的vps,为了防范数据丢失,需要及时备份下网站的数据和代码,这样等哪天数据丢失即可及时恢复,数据最重要
解决方法
自己就通过查找资料,简单地写了shell脚本
- 首先打包wordpress代码,使用mysqldump导出mysql数据
- 其次使用mail命令发送数据到指定邮箱
- 最后crontab定时执行
即可搞定
另外在使用mail命令行工具时遇到了一个问题,stackoverflow帮我解决了,具体在这里
实现脚本
#!/bin/bash # author: yaronli (jidalyg_8711@163.com) # powered by yaronspace.cn set -x backup() { cd /var/www/ #打包代码 tar -czf /tmp/${1}_$(date +%F).tar.gz ${1} #导出数据 mysqldump -u${2} -p${3} ${1} > /tmp/${1}_$(date +%F).sql #以附件形式发送邮件 (uuencode /tmp/${1}_$(date +%F).tar.gz ${1}_$(date +%F).tar.gz; uuencode /tmp/${1}_$(date +%F).sql ${1}_$(date +%F).sql)\ | mail -s ${1}_$(date +%F) yangguangli19871124@gmail.com } #param1: 站点目录 param2: 数据库用户 param3: 密码 backup yaronspace **** **** backup xiaofangdeng **** ****
Quartz使用之:Cron 表达式
三 8th
一个Cron表达式是由7个子表达式组成的字符串,这些子表达式用空格分隔,其中最后一个子表达式是可选的,其他都是必须的。每个子表达式都描述了一个单独的日程细节。每一个子表达式的含义如下:
子表达式名称(取值范围)(允许的特殊字符)
1.Seconds秒 (0-59) (, – * /)
2.Minutes分钟 (0-59) (, – * /)
3.Hours小时 (0-23) (, – * /)
4.Day-of-Month月中的天 (1-31) (, – * ? / L W)
5.Month月 (1-12或JAN-DEC) (, – * /)
6.Day-of-Week周中的天 (1-7或SUN-SAT) (, – * ? / L #)
7.Year(optional)年(可选) (空或1970-2099) (, – * /)
一个cron表达式的例子字符串为”0 0 12 ? * WED”,这表示“每周三的中午12:00”。 更多 >
近期评论