快速学习Linux-shell脚本应用

2019-11-14 14:47:02 浏览数 (1)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42528266/article/details/103062458

shell脚本应用
代码语言:javascript复制
需求: 每天晚上凌晨2点开始对数据库进行数据备份到/backup/目录下,并且只保留7天的备份数据
定时任务
代码语言:javascript复制
概述:crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。

格式
[minute] [hour] [day] [month] [week] [command]
minute: 区间为 0 – 59 
hour: 区间为0 – 23 
day: 区间为1 – 31 
month: 区间为1 – 12.
week: 区间为0 – 7. 周日可以是0或7.
command:需要定时执行的命令,也可以是一个脚本文件

示例
1.每天凌晨过一分钟,执行任务。
1 0 * * * command

2. 每个工作日(Mon – Fri) 11:59 都进行备份作业。
59 11 * * 1,2,3,4,5 command
下面例子与上面的例子效果一样:
59 11 * * 1-5 command

3,每个月4号和10号10点钟运行
0 10 4,10 * *  command

4. 每5分钟运行一次命令
*/5 * * * * command

5,每两个小时运行一次命令
0 */2 * * * command

选项
crontab [需要执行的文件]
crontab –l : 显示 crontab 文件。 
crontab -r : 删除 crontab 文件。
数据库定时备份
代码语言:javascript复制
需求: 每天晚上凌晨2点开始对数据库进行数据备份到/backup/目录下,并且只保留7天的备份数据

定时表达式:0 2 * * *
时间定义:DATE=$(date  %Y%m%d)
数据库备份:mysqldump -uroot -padmin p2p > /backup/p2p$DATE.sql
查询文件:find /backup -mtime  7 -name *.sql | xargs rm -rf

0 人点赞