一、练习
1.每4小时备份一次/etc目录至/backup目录中,保存的文件名称格式为“etc-yyyy-mm-dd-HH.tar.xz”?
- [root@wybaron_host1015 ~]# cat scripts/cron-tar.sh
- #!/bin/bash
- #
- #
-
- t=`date +%Y-%m-%d-%H`
- mkdir /backup/etc-$t
- cp /etc/* /backup/etc-$t
- tar -c -f /backup/etc-"$t".tar /backup/etc-$t
- xz /backup/etc-"$t".tar
- rm -df /backup/ect-$t
-
- [root@wybaron_host1015 ~]# crontab -l
- 20 */4 * * * /usr/bin/bash /root/scripts/cron-tar.sh
2.每周2,4,7备份/var/log/messages文件至/logs目录中,文件名形如“messages-yyyymmdd”?
- [root@wybaron_host1015 ~]# crontab -l
- * * * * 2,4,7 /usr/bin/cp /var/log/messages /logs/messages-`date +%Y%m%d`
3.每两小时取出当前系统/proc/meminfo文件中以S或M开头的信息追加至/tmp/meminfo.txt文件中?
- [root@wybaron_host1015 ~]# touch /tmp/meminfo.txt
- [root@wybaron_host1015 ~]# crontab -l
- 20 */2 * * * /usr/bin/grep "^[SM]" /proc/meminfo >> /tmp/meminfo.txt
4.工作日时间内,每小执行一次“ip addr show”命令?
- [root@wybaron_host1015 ~]# crontab -l
- 0 * * * 1-5 /usr/sbin/ip addr show
二、补充
案例
每十秒输出一次当前系统时间
- [root@wybaron_host1015 ~]# crontab -l
- * * * * * for i in 1 2 3 4 5 6 ;do echo `date`;sleep 10;done
- [root@wybaron_host1015 ~]# cat /var/spool/mail/root
- From root@wybaron_host1015.localdomain Sun Oct 21 12:56:02 2018
- Return-Path: <root@wybaron_host1015.localdomain>
- X-Original-To: root
- Delivered-To: root@wybaron_host1015.localdomain
- Received: by wybaron_host1015.localdomain (Postfix, from userid 0)
- id F093410A38C9; Sun, 21 Oct 2018 12:56:01 +0800 (CST)
- From: "(Cron Daemon)" <root@wybaron_host1015.localdomain>
- To: root@wybaron_host1015.localdomain
- Subject: Cron <root@wybaron_host1015> for i in 1 2 3 4 5 6 ;do echo `date`;sleep 10;done
- Content-Type: text/plain; charset=UTF-8
- Auto-Submitted: auto-generated
- Precedence: bulk
- X-Cron-Env: <XDG_SESSION_ID=437>
- X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
- X-Cron-Env: <LANG=zh_CN.UTF-8>
- X-Cron-Env: <SHELL=/bin/sh>
- X-Cron-Env: <HOME=/root>
- X-Cron-Env: <PATH=/usr/bin:/bin>
- X-Cron-Env: <LOGNAME=root>
- X-Cron-Env: <USER=root>
- Message-Id: <20181021045601.F093410A38C9@wybaron_host1015.localdomain>
- Date: Sun, 21 Oct 2018 12:55:01 +0800 (CST)
-
- 2018年 10月 21日 星期日 12:55:01 CST
- 2018年 10月 21日 星期日 12:55:11 CST
- 2018年 10月 21日 星期日 12:55:21 CST
- 2018年 10月 21日 星期日 12:55:31 CST
- 2018年 10月 21日 星期日 12:55:41 CST
- 2018年 10月 21日 星期日 12:55:51 CST
每8分钟运行一次“echo "Hello"”
22 */2 * * * for i in $(seq 1 15);do echo"Hello";sleep 8m;done
sleep命令
延迟、暂停指定的时间,“睡眠命令”
- ~]# sleep NUMBER[SUFFIX]
- SUFFIX:
- s:秒,默认值
- m:分钟
- h:小时
- d:天