第二十二天
第二十二天
实战测试每隔3天 夜里2点 执行数据备份脚本mysql.sh
写出定时命令:
crontab -e
把下面这个复制进去
#!/bin/bash
0 2 */3 * * /usr/bin/mysql.sh > /dev/null 2>&1
保存就可以了
命令注解:
0 2 */3 * * /usr/bin/mysql.sh > /dev/null 2>&1 是一个定时任务,它会在每3天的凌晨2点执行一个名为mysql.sh的脚本,并将该脚本的所有输出(包括标准输出和错误输出)重定向到/dev/null。
0 - 分钟字段:表示在每小时的第0分钟执行任务,即整点。
2 - 小时字段:表示在凌晨2点执行任务。
*/3 - 日期字段:表示每隔3天执行一次任务。*/3是一个范围/步长表达式,表示从当前日期开始,每隔3天执行一次。
* - 月份字段:星号表示“每个月”,即不限制月份。
* - 星期字段:同样,星号表示“每周的每一天”,即不限制星期几。
/usr/bin/mysql.sh - 要执行的命令或脚本。这里指定了一个名为mysql.sh的脚本,并且假设它位于/usr/bin/目录下。
> /dev/null - 输出重定向:这表示将标准输出(即脚本的正常输出)重定向到/dev/null。/dev/null是一个特殊的设备文件,它会丢弃所有写入其中的数据,通常用于丢弃不需要的输出。
2>&1 - 错误输出重定向:这表示将标准错误输出(即脚本的错误消息)重定向到与标准输出相同的位置。由于标准输出已经被重定向到/dev/null,所以标准错误输出也将被丢弃。
综上所述,这个cron作业配置会在每3天的凌晨2点执行mysql.sh脚本,并且不会保留或显示任何输出或错误消息。
*/5 * * * * ping -c 100 www.wanmei.com > /root/network.log 2>&1
啥意思:
每五分钟执行ping命令并发送100个数据包给www.wanmei.com 同时输出到 /root/network.log这个文件里
05 03 * * * sh /usr/script/tongji.sh >/dev/null 2>&1
答案:
每天凌晨3点05分执行这个 /usr/script/tongji.sh脚本,把结果输出到黑洞,就是不显示任何信息
1.1.3.4 crontab里0 2 * * 1 /data/postmall/shell/a.sh
表示什么含义?
每周一2点执行这个脚本
00 22 * * * rm -rf /test/* >>/tmp/log 2>&1
含义:
每天22点执行 rm -rf /test/* 把结果输出到/tmp/log文件里
50 16 * * * rm -rf /abc/* >>/dev/null 2>&1
含义:
每天16点50执行 rm -rf /abc/*,把结果输出到黑洞文件里
50 17 * * 1 tar zcf ./backup-date +%F.tar.gz /data >/dev/null 2>&1
含义:
每周一17点50执行备份这个命令,输出到黑洞文件里,也就是不保留信息
15 03 * * 6 sh /home/shell/collect.pl >/dev/null 2>&1
含义:
每周六3点15分执行这个脚本 ,输出结果到黑洞文件里,也就是不保留信息
00 00 1 * * tar zcf /tmp/etc-date +%F.tar.gz /etc >>
含义:
每月第一天0点执行tar zcf /tmp/etc-date +%F.tar.gz /etc ,
00 06-18/3,13 * 10 * sh /opt/backup.sh
含义:
00 06-18/3,13 * 10 *
分 时 日 月 周
00分 6点到18点每三小时执行一次,还有13点执行一次 10月
每年10月份的6点到18点之间,每三小时执行一次(6点,9点,12点,15点,18点),还有13点,执行这个脚本
提示:
工作 定时任务 注意 后面 都要追加到黑洞文件避免占用磁盘空间
编写定时任务时,可以将输出到屏幕上的信息保存到黑洞中,避免占用磁盘空间
* * * * * sh test.sh &>/dev/null
重点回顾
* * * * *
含义
分钟 时 日 月 周
分钟 0-59
时 0-23
日 1-31
月 1-12
周 1-7