一、练习
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:天