1、简介

crontab命令常见于 Unix和类Unix 的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。

2、配置格式

2.1、语法格式

* * * * * cmd

其中,*代表的是所有,如果五个*则表示每分钟执行一次

2.2、参数解析

<分钟> <小时> <每月的第n天> <每年的第n月> <每周的第n天> <执行的命令>

2.3、取值范围

参数类型取值范围
分钟1~60
小时1~60
1~31
1~12
周天1~7

3、案例

简单的指令可以直接打命令上去,如果涉及多个操作则需要编写脚本并赋予执行权限,然后再去调用

3.1、如何新建任务

通过下面的命令可以进入任务编辑

crontab -e

在这里插入图片描述

通过下面的命令可以列出当前所有任务

crontab -l
root@l:~# crontab -l
*/5 * * * * flock -xn /tmp/stargate.lock -c '/usr/local/qcloud/stargate/admin/start.sh > /dev/null 2>&1 &'
15 * * * * /data/liu/auto/wordpress/wordpress_bak.sh
1 21 * * * /data/liu/auto/step_all.sh
1 00 * * * /data/liu/auto/clean
root@l:~# 

3.2、每分钟打印一次内存使用信息

由于这个只要一条组合命令即可完成,所以不需要写脚本

* * * * * free -m | tee -a /data/liu/mem.log

实现效果
在这里插入图片描述

3.3、每天某个时间执行脚本

每天2101分执行脚本/data/liu/auto/step_all.sh

1 21 * * * /data/liu/auto/step_all.sh