• 定时任务cron与crontab


     

    目录

     

    一、Cron

    示例

    二、Crontab

    选项

    crontab注意事项:


    一、Cron

    秒  分  时  日  月  周  年份

    1. {秒数}{分钟} ==> 允许值范围: 0~59 ,不允许为空值,若值不合法,调度器将抛出SchedulerException异常
    2. *” 代表每隔1秒钟触发;
    3. “,” 代表在指定的秒数触发,比如”0,15,45”代表0秒、15秒和45秒时触发任务
    4. “-“代表在指定的范围内触发,比如”25-45”代表从25秒开始触发到45秒结束触发,每隔1秒触发1
    5. /”代表触发步进(step),”/”前面的值代表初始值(““等同”0”),后面的值代表偏移量,比如”0/20”或者”/20”代表从0秒钟开始,每隔20秒钟触发1次,即0秒触发1次,20秒触发1次,40秒触发1次;”5/20”代表5秒触发1次,25秒触发1次,45秒触发1次;”10-45/20”代表在[10,45]内步进20秒命中的时间点触发,即10秒触发1次,30秒触发1
    6. {小时} ==> 允许值范围: 0~23 ,不允许为空值,若值不合法,调度器将抛出SchedulerException异常,占位符和秒数一样
    7. {日期} ==> 允许值范围: 1~31 ,不允许为空值,若值不合法,调度器将抛出SchedulerException异常
    8. {星期} ==> 允许值范围: 1~7 (SUN-SAT),1代表星期天(一星期的第一天),以此类推,7代表星期六(一星期的最后一天),不允许为空值,若值不合法,调度器将抛出SchedulerException异常
    9. {年份} ==> 允许值范围: 1970~2099 ,允许为空,若值不合法,调度器将抛出SchedulerException异常
    10. 注意:除了{日期}和{星期}可以使用”?”来实现互斥,表达无意义的信息之外,其他占位符都要具有具体的时间含义,且依赖关系为:年->月->日期(星期)->小时->分钟->秒数
    11. L ==> 表示last,例如星期中表示7或SAT,月份中表示最后一天31306L表示这个月倒数第6天,FRIL表示这个月的最后一个星期五
    12. W ==> 只能用在月份中,表示最接近指定天的工作日
    13. # ==> 只能用在星期中,表示这个月的第几个周几,例如6#3表示这个月的第3个周五

    示例

    1. 0 * * * * ? 每1分钟触发一次
    2. 30 * * * * ? 每半分钟触发任务
    3. 0 0 * * * ? 每天每1小时触发一次
    4. 30 25 * * * ? 每小时的2530秒触发任务
    5. 0 0 10 * * ? 每天10点触发一次
    6. 25 30 2 * * ? 每天23025秒执行一次
    7. 0 * 14 * * ? 在每天下午2点到下午2:59的每分钟触发
    8. 0 30 9 1 * ? 每月1号上午9点半
    9. 0 15 10 15 * ? 每月15日上午10:15触发
    10. */5 * * * * ? 每隔5秒执行一次
    11. 0 */1 * * * ? 每隔1分钟执行一次
    12. 0 0 5-15 * * ? 每天5-15点整点执行
    13. 0 0/3 * * * ? 从0分钟开始,每隔三分钟执行一次;即0369......
    14. 0 0 0 1 * ? 每月1000秒执行一次
    15. 30 10 1 8 8 ? 2024 20248811030秒触发任务
    16. 30 10 1 ? 8 * 2024 20248月每天11030秒触发任务
    17. 30 10 1 ? 8 SUN 2024 20248月每周日11030秒触发任务
    18. 15,30,45 * * * * ? 每15秒,30秒,45秒时触发任务
    19. 15-45 * * * * ? 1545秒内,每秒都触发任务
    20. 15/5 * * * * ? 每分钟的每15秒开始触发,每隔5秒触发一次
    21. 15-30/5 * * * * ? 每分钟的15秒到30秒之间开始触发,每隔5秒触发一次
    22. 0 0/3 * * * ? 每小时的第00秒开始,每三分钟触发一次
    23. 0 15 10 ? * MON-FRI 星期一到星期五的10150秒触发任务
    24. 0 15 10 L * ? 每个月最后一天的10150秒触发任务
    25. 0 15 10 LW * ? 每个月最后一个工作日的10150秒触发任务
    26. 0 15 10 ? * 5L 每个月最后一个星期四的10150秒触发任务
    27. 0 15 10 ? * 3#6 每个月第六周的星期二的10150秒触发任务

    二、Crontab

     *     *     *      *     *  

    分   时   日   月   周  

    时间含义范围
    一小时中的第几分钟 (0~59)
    一天中的第几个小时 (0~23)
    一个月中的第几天   (1~31)
    一年中的第几个月     (1~12)
    一周中的星期几     (0~7   0和7都代表星期日)

    示例

    1. 每月的2号、6号、8号    8点-12点  每25分钟  执行
    2. */25  8-12  268  *   *
    符号含义
    *代表任意时间
    代表不连续的时间;例:0  6,13,18  *  *  *  表示在每天的6点0分、13点0分、18点0分执行一次
    -代表连续的时间范围;例:0  8  *  *  1-6   表示在周一到周六的8点0分执行命令
    /代表每隔多久执行一次;例:*/6  *  *  *  *  表示每隔6分钟就执行一次

    选项

    选项含义
    -u用来指定某个用户的crontab的服务
    -e 编辑某个用户的 crontab 文件内容。如果不指定用户,则表示编辑当前用户的 crontab 文件。
    -l显示某用户的 crontab 文件内容,如果不指定用户,则表示显示当前用户的 crontab 文件内容。
    -r从 /var/spool/cron 删除某用户的 crontab 文件,如果不指定用户,则默认删除当前用户的 crontab 文件。
    -i在删除用户的 crontab 文件时,给确认提示。
    1. [root@mjy ~]# cd /opt
    2. [root@mjy opt]# cat /etc/crontab
    3. SHELL=/bin/bash
    4. PATH=/sbin:/bin:/usr/sbin:/usr/bin
    5. MAILTO=root
    6. # For details see man 4 crontabs
    7. # Example of job definition:
    8. # .---------------- minute (0 - 59)
    9. # | .------------- hour (0 - 23)
    10. # | | .---------- day of month (1 - 31)
    11. # | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
    12. # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
    13. # | | | | |
    14. # * * * * * user-name command to be executed

    crontab注意事项:

    • 六个选项不能空,如不确定,用*代表任意时间
    • crontab 最小有效时间是分钟,最大有效时间是月
    • 定义时间时,日期和星期最好不要一起出现,因为都是以天为单位,容易混淆、
    • 在定时任务中,最好用相对路径。有时用相对路径会报错
  • 相关阅读:
    1,2,4,5-四嗪-羧基Py-Tetrazine-amine HCl/Py-NH2/NH2CH2CONH-Py2-Tetrazine HCl Salt的性能
    Haproxy负载均衡集群
    【excel密码】excel文件加密方法总结:
    MySQL+Java实现父子级联查询
    JavaScript ES6函数触发方式,解构和class构造函数
    基于sklearn的机器学习 — 支持向量机(SVM)
    OD_2024_C卷_200分_1、爱吃蟠桃的孙悟空【JAVA】【二分法】
    C语言模拟最简单的计算机
    【英语:基础高阶_经典外刊阅读】L5.解构阅读中段落—匹配类题目详解
    关于Fragment的生命周期,你知道多少?
  • 原文地址:https://blog.csdn.net/m_j_y0_0/article/details/138190182