# 说明
Linux crontab是用来定期执行程序的命令。
当安装完成操作系统之后,默认便会启动此任务调度命令。
crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。
而linux任务调度的工作主要分为以下两类:
- 1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存
- 2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置
# 命令说明
```
crontab [ -u <用户名>] { -e | -l | -r }
```
- `-u <用户名>` 指定要操作的用户, 可空, 默认当前用户
- `-e` 编辑定时任务
- `-l` 列出用户的定时任务
- `-r` 删除该用户的定时任务
## 定时任务语法
```
minute hour day month week command
分 小时 日 月 周 执行的命令
```
- `minute`表示分钟 (0~59)
- `hour` 表示小时 (0~23)
- `day`表示日期 (1~31)
- `month` 表示月份 (1~12)
- `week` 表示星期几 (0~6) 0/7代表周日
> `*`代表所有可能的值
## 例子
```
# 每天凌晨执行
0 0 * * * echo "hello"
# 每10分钟进行一次
*/10 * * * * echo "hello"
```
## 参考资料
- [如何写一个定时执行的shell脚本](https://andyliwr.github.io/2018/05/03/how_to_write_a_timed_shell/)