<s id="m00ei"></s><center id="m00ei"></center>
  • <tfoot id="m00ei"></tfoot>

  • cron 表達式: 一套用于指定定時任務的表達式

    2023-08-12 23:22:05

    Cron 是一種用于設置定期執行任務的表達式。最早出現于 Unix 操作系統,crontab 軟件中就是一款使用這套語法的任務管理工具,常用于備份系統或清理日志。


    (資料圖片僅供參考)

    現在,Cron 表達式已被廣泛地應用于各種操作系統和應用程序中。平時看到的像是 0 0 * * **/5 * * * *等這些字符串都屬于 Cron 表達式。 中也支持使用 cron包來指定定時任務。

    既然使用那么廣泛,那么它是如何定義的呢?接下來我們就來學習。

    語法

    經典的 Cron 表達式由 5 位構成,中間用空格分割。語法如下:

    [minute] [hour] [day of month] [month] [day of week]

    每個字段的含義是:

    [minte]表示分鐘。取值范圍 0 到 59

    [hour]表示小時。取值范圍 0 到 23

    [day of month]表示幾號。取值范圍 1 到 23

    [month]表示幾月。取值范圍 1 到 12,也可以是用名稱簡寫(從 JanDec

    [day of week]表示周幾。取值范圍 0 到 6,也可以是用名稱簡寫(從 SunSat

    通用模式

    每個位置上除了上面列舉的值,還有一些通用模式可以使用:

    逗號 ,:表示當前使用的值的列表。比如 [minte]取值 1,3,5時,表示1分、3分和5分時各執行一次

    連字符號 -:表示當前使用的值的范圍。比如 [minte]取值 1-5時,等同于 1,2,3,4,5,表示1分、2分、3分、4分和5分時各執行一次

    星號 *:表示“從頭到尾(frist-last)”。比如 [minte]取值 *時,等同于 0-59,表示每分鐘執行一次

    斜杠符號 /:表示步進。比如 [minte]取值 */2,表示每 2 分鐘執行一次,即在2分、4分……58分、0分(下一個小時)分別執行一次;當 [minte]取值 1-9/2時,等同于 1,3,5,7,9,表示1分、5分、5分、7分和9分時各執行一次。步進默認為 1,即 *的寫法等同于 */1,表示每分鐘執行一次。

    練習

    * * * * *

    表示每分鐘執行一次。等同于 */1 * * * *0-59/1 * * * *

    */30 * * * *

    表示每半個小時執行一次。

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2023-08-03 16:00:00

    then at 2023-08-03 16:30:00

    then at 2023-08-03 17:00:00

    then at 2023-08-03 17:30:00

    then at 2023-08-03 18:00:00

    ……

    0 * * * *

    表示每小時(整點)執行一次。等同于 0 */1 * * *

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2023-08-03 16:00:00

    then at 2023-08-03 17:00:00

    then at 2023-08-03 18:00:00

    then at 2023-08-03 19:00:00

    then at 2023-08-03 20:00:00

    ……

    0 9-17 * * *

    從早上9點到下午5點,每小時(整點)執行一次。

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2023-08-03 16:00:00

    then at 2023-08-03 17:00:00

    then at 2023-08-04 09:00:00

    then at 2023-08-04 10:00:00

    then at 2023-08-04 11:00:00

    ……

    0 0 * * *

    表示每天(整點)執行一次。等同于 0 0 */1 * *

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2023-08-04 00:00:00

    then at 2023-08-05 00:00:00

    then at 2023-08-06 00:00:00

    then at 2023-08-07 00:00:00

    then at 2023-08-08 00:00:00

    ……

    0 8 * * *

    表示每天上午 8 點執行一次。

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2023-08-04 08:00:00

    then at 2023-08-05 08:00:00

    then at 2023-08-06 08:00:00

    then at 2023-08-07 08:00:00

    then at 2023-08-08 08:00:00

    ……

    0 8 * * 5

    表示每周五上午 8 點執行一次。等同于 0 0 * * FRI,相當于是 1 周執行 1 次。

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2023-08-04 00:00:00

    then at 2023-08-11 00:00:00

    then at 2023-08-18 00:00:00

    then at 2023-08-25 00:00:00

    then at 2023-09-01 00:00:00

    ……

    0 8 * * 4,5則表示每周四、每周五早上 8 點執行一次。

    0 0 * * 1-5

    表示每個工作日 8 點執行一次。

    0 8 * * 6,0則表示周末兩天早 8 點執行一次。

    0 0 1 * *

    表示每月 1 號執行一次。等同于 0 0 1 */1 *

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2023-09-01 00:00:00

    then at 2023-10-01 00:00:00

    then at 2023-11-01 00:00:00

    then at 2023-12-01 00:00:00

    then at 2024-01-01 00:00:00

    ……

    0 0 1 */3 *

    表示每個季度執行一次。

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2023-10-01 00:00:00

    then at 2024-01-01 00:00:00

    then at 2024-04-01 00:00:00

    then at 2024-07-01 00:00:00

    then at 2024-10-01 00:00:00

    ……

    0 0 1 1 *

    表示每年執行一次(1月1號 00:00)。

    如果當前是 2023-08-03 15:41。那么后續執行時間分別是:

    next at 2024-01-01 00:00:00

    then at 2025-01-01 00:00:00

    then at 2026-01-01 00:00:00

    then at 2027-01-01 00:00:00

    then at 2028-01-01 00:00:00

    ……

    掌握以上所列舉的這些表達式就足夠以后使用的了。

    中使用

    可以使用 cron 包執行定時任務。需要注意的是,cron 采用的是 6 位 Cron 表達式語法。

    跟經典語法相比:1. 第一位表示“秒”,而不是經典定義中的“分鐘”2.?另外,cron 包目前的 v2 版本的[month]的取值范圍是 0~11,而非 1~12。不過官方文檔說,cron v3 版本開始[month]的取值范圍將調整為 1~12。

    下面就來安裝依賴。

    使用方式如下:

    總結

    Cron 是一種用于設置定期執行任務的表達式,語法比較簡單,常用于備份系統或清理日志,現在已被廣泛地應用于各種操作系統和應用程序中。經典的 Cron 表達式由 5 位構成,中間用空格分割,分表表示“分鐘”、“小時”、“幾號”、“幾月” 和 “周幾”。實際使用時,不同軟件可能會做一些拓展,比如 的 Cron 使用的就是 6 位,稍稍注意一下即可。

    參考鏈接

    ●/package/cron●/●/

    關閉
    精彩放送
    日本乱人伦电影在线播放,欧洲女人性开放视频在线观看,1024香蕉国产在线视频,97国产精品视频
    <s id="m00ei"></s><center id="m00ei"></center>
  • <tfoot id="m00ei"></tfoot>
  • 主站蜘蛛池模板: 最近2018中文字幕2019国语视频| 亚洲人成人一区二区三区| 一个人看的免费视频www在线高清动漫| 色偷偷噜噜噜亚洲男人| 日本电影免费久久精品| 国产在线19禁免费观看国产| 免费a级毛片无码| xxxx日本在线| 男人的天堂色偷偷| 天堂中文在线资源| 亚洲码在线中文在线观看| 91国高清视频| 精品伊人久久久久7777人| 成人免费视频网址| 国产大片91精品免费观看男同 | 再深点灬舒服了灬太大了乡村| 久草视频这里只有精品| 91视频免费观看| 米兰厉云封免费阅读完结| 日本一区二区三| 四虎精品视频在线永久免费观看| 久青草影院在线观看国产| 99自拍视频在线观看| 欧美性黑人极品hd| 国产砖码砖专区| 乱码卡一卡二卡新区在线| 香港全黄一级毛片在线播放| 无码精品a∨在线观看中文| 国产成人高清视频| 久久国产午夜一区二区福利| 老司机精品视频在线| 好男人手机在线| 亚洲欧美日韩人成在线播放| japanese日本熟妇多毛| 污视频软件大全| 国产精品入口在线看麻豆| 亚洲一卡2卡4卡5卡6卡在线99| 高铁上要了很多次| 强迫的护士bd在线观看| 四虎影视在线影院在线观看| www.99色|