Linux 定时任务 crontab

crontab 命令格式

crontab [-u user] file

crontab [-u user] [ -e | -l | -r ]

 

-u user:用来设定某个用户的crontab服务

file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab

-e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件

-l:显示某个用户的crontab文件内容。如果不指定用户,则表示显示当前用户的crontab文件内容

-r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件

crontab 文件格式

f1  f2  f3   f4  f5  command

*    *    *    *    *
-    -    -    -    -
|    |    |    |    |
|    |    |    |    +----- 星期中星期几 (0 - 6) (星期天 为0)
|    |    |    +---------- 月份 (1 - 12) 
|    |    +--------------- 一个月中的第几天 (1 - 31)
|    +-------------------- 小时 (0 - 23)
+------------------------- 分钟 (0 - 59) 

星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。

逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”

中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

一些示例

每一分钟执行一次 /bin/ls:
* * * * * /bin/ls

每小时的第一分执行 /home/bruce/backup这个文件:
1 * * * * /home/bruce/backup

在 12 月内, 每天的早上 6 点到 12 点,每隔 3 个小时 0 分钟执行一次 /usr/bin/backup:
0 6-12/3 * 12 * /usr/bin/backup

每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....执行 echo "haha":
20 0-23/2 * * * echo "haha"
 

参考链接:

crontab命令详解 含启动/重启/停止 - 异步非阻塞 - 博客园

Linux crontab 命令 | 菜鸟教程

你可能感兴趣的:(Linux,开发语言)