Bootstrap

Linux cron定时任务常用方法

Linux cron定时任务使用技巧

1. crontab含义

项目含义范围
第一个"*"一小时当中的第几分钟(minute)0~59
第二个"*"一天当中的第几小时(hour)0~23
第三个"*"一个月当中的第几天(day)1~31
第四个"*"一年当中的第几个月(month)1~12
第五个"*"一周当中的星期几(week)0~7(0和7都代表星期日)
特殊符号含义
*(星号)代表任何时间。比如第一个"*"就代表一小时种每分钟都执行一次的意思。
,(逗号)代表不连续的时间。比如"0 8,12,16***命令"就代表在每天的 8 点 0 分、12 点 0 分、16 点 0 分都执行一次命令。
-(中杠)代表连续的时间范围。比如"0 5 ** 1-6命令",代表在周一到周六的凌晨 5 点 0 分执行命令。
/(正斜线)代表每隔多久执行一次。比如"/10***命令",代表每隔 10 分钟就执行一次命令。
时间含义
45 22 ***命令在 22 点 45 分执行命令
0 17 ** 1命令在每周一的 17 点 0 分执行命令
0 5 1,15**命令在每月 1 日和 15 日的凌晨 5 点 0 分执行命令
40 4 ** 1-5命令在每周一到周五的凌晨 4 点 40 分执行命令
*/10 4 ***命令在每天的凌晨 4 点,每隔 10 分钟执行一次命令
0 0 1,15 * 1命令在每月 1 日和 15 日,每周一个 0 点 0 分都会执行命令,注意:星期几和几日最好不要同时出现,因为它们定义的都是天,非常容易让管理员混淆

2. 常用crontab表达式

1. 每分钟执行一次命令

* * * * * command

2. 每十分钟执行一次命令

*/10 * * * * command

3.每小时执行一次命令

0 * * * * command

4. 每两个小时执行一次

0 */2 * * * command

5. 每天凌晨执行一次命令

0 0 * * * command

6. 每天晚上七点十分执行一次

10 19 * * * command

7. 每天十二点执行一次

0 12 * * * command

8. 每周一十点执行一次

0 10 * * 1 command

9. 每周五晚上十一点半执行一次

30 23 * * 5 command

10. 每周日凌晨执行一次命令

0 0 * * 0 command

11. 每月第一天凌晨执行一次命令

0 0 1 * * command

12. 每月1日凌晨两点执行一次

0 2 1 * * command
;