zoukankan      html  css  js  c++  java
  • 【Jenkins】定时构建语法

    跟cron定时任务语法基本类似

    一、字段有哪些

    每行包含5个字段,用制表符或空格隔开,从左至右依次是:

    分 时 天 月 星期

    二、每个字段的取值范围

    • 分钟 (0–59)
    • 时 (0–23)
    • 天 (1–31)
    • 月 (1–12)
    • 星期 (0 和 7 都代表星期日)

    三、为了每个字段可以取多个值,可以用下面操作符,按优先顺序:

    • * 匹配范围内所有值
    • M-N 匹配(M~N范围内的所有值)
    • M-N/X or * /X 在指定区间(M~N)或者整个有效区间 * 内,每隔 X 构建一次
    • A,B,...,Z 匹配多个值

    四、符号 H 的用法

    1. 为了在系统中产生均匀的计划任务, 尽可能的使用符合H(就是Hash)
      例如, 用 0 0 * * * 来执行十几个任务,将会在午夜产生较大的峰值,
      相反, 用 H H * * * 在一天中仍然会执行每一个任务, 但是并不在同一时间去做,可以更好的利用有限的资源。

    2. 符号H可以用作一个范围.
      例如, H H(0-7) * * * 代表着在凌晨0:00 到早上7:59的这段时间, 你还可以用H 代表有范围或者无范围中的 区间。

    3. H可以被当做一个范围内的随机值,实际上,它是一个任务的hash,并不是一个随机函数,所以对于任务项目来说, 这个值都是稳定的。

    4. 要注意在一个月中天的字段,短周期内例如 * /3 或者 H/3 将在接近月末的时候,因为月长的不固定,工作会不稳定。
      例如,* /3 将会在一个31天的月中,第1天、第4天、第7天......、第28天、第31天执行构建,然后再下一个月继续重复执行,
      hash常常会选择范围1~28天内执行,所以,H/3 在月末的3~6天里,产生运行间隙(长时间循环导致长度不一致,但是这个影响相对来说不明显)

    5. 空行 和 以 #开头的被视为 注释

    6. 一些别名
      @yearly, @annually, @monthly, @weekly, @daily, @midnight, and @hourly,这些使用系统默认自动匹配的时间。
      比如,
      @hourly 跟 H * * * * 都表示一个小时之内的任意时间.
      @midnight 代表 0:00 AM and 2:59 AM 之间的时间.

      例如:
      * 每隔15分钟 (或许在 :07、 :22 、:37、 :52)
      H/15 * * * *
      *每个前半小时之内,每10分钟 (共有三次, 可能在 :04、 :14、 :24)
      H(0-29)/10 * * * *
      *每个工作日从早上9点45分开始到下午3点45分结束这段时间内,每间隔2小时的45分钟那一刻
      45 9-16/2 * * 1-5
      * 每个工作日从早上9点到下午5点这段时间内每间隔2小时之间的某刻。(或许在上午10:38, 下午12:38, 下午2:38 , 下午4:38)
      H H(9-16)/2 * * 1-5
      * 每月(除了12月)从1号到15号这段时间内某刻
      H H 1,15 1-11 *

  • 相关阅读:
    单点登录
    Found conflicts between different versions of the same dependent assembly that could not be resolved
    在Visual Studio Code中使用C#以及.net core
    GitBlit中出现 error: remote unpack failed: error Missing tree
    net user
    SwitchyOmega
    What's the difference between Unicode and UTF-8?
    2>&1
    [C++基金会]位计算 游戏开发中的应用
    Broadcast Receiver注意事项
  • 原文地址:https://www.cnblogs.com/pingguo-softwaretesting/p/10177597.html
Copyright © 2011-2022 走看看