Linux - cron - cron 表達式


  1. 概述

    1. 之前 cron 的補充
    2. 這次介紹下 表達式
  2. 背景

    1. 之前有說過 cron
    2. 這次說下 表達式

1. 准備

  1. 環境
    1. os
      1. centos7

2. 模板文件

  1. 文件
    1. 位置

      1. /etc/crontab
    2. 作用

      1. 系統任務
        1. 不建議直接使用
      2. cron 表達式模板
        1. 協作參考

3. cron 腳本

  1. 內容
    1. 變量

      1. shell
        1. 指定 shell
      2. path
        1. 添加路徑
        2. 如果沒有的話, 執行要 帶程序的全路徑
      3. mailto
        1. 如果出現問題, 會把信息發送給特定用戶
    2. 任務定義

      1. 組成
        1. cron 表達式
        2. 執行用戶
          1. 通常 都是創建 cron 任務的用戶自己
          2. root 的權限可能大一些
        3. 執行命令
          1. 如果沒有 path, 需要帶 全路徑

4. cron 表達式

  1. 概述

    1. cron 表達式
      1. 表示按一定的頻率, 執行操作
  2. 字段

    1. 概述

      1. linux 上的 cron 表達式一共 5 個字段
        1. 其他地方的, 可能會有 6 個
        2. 基本上 大同小異, 靈活處理即可
    2. 字段

      1. 解釋

        # /etc/crontab 講得還挺好, 我直接復制了
        # For details see man 4 crontabs
        
        # Example of job definition:
        # .---------------- minute (0 - 59)
        # |  .------------- hour (0 - 23)
        # |  |  .---------- day of month (1 - 31)
        # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
        # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
        # |  |  |  |  |
        # *  *  *  *  * user-name  command to be executed
        
  3. 例子

    # 1. 每分鍾執行一次, 通常在每分鍾的 第一秒 執行
    * * * * *
    # 2. 每小時的 15 分, 執行一次
    15 * * * *
    # 3. 每天 3:15, 執行一次
    15 3 * * *
    # 4. 每個月 1 日 的 3:15, 執行一次
    15 3 1 * *
    # 5. 每年的 2 月 1 日, 在 3:15 時執行一次
    15 3 1 2 *
    # 6. 2 月的每個星期一, 在 3:15 時執行一次
    # 日期 和 星期, 不能同時支持
    15 3 * 2 1
    
  4. 進階

    1. 概述

      1. 首先, 也不是什么太難的技巧
    2. 場景

      1. 執行多次
        1. 連續執行
        2. 間隔執行
    3. 思路1: 多寫幾條 cron 任務

      1. 感覺
        1. 可行
        2. 但會不會 太笨了?
    4. 思路2: 調整 cron 表達式

      # 只用 分鍾 字段做例子, 其他字段也可以
      # 1. 連續時間: 1, 10 分, 每分鍾一次
      1-10 * * * *
      # 2. 間隔時間: 1, 10 分, 各一次
      1,10 * * * *
      # 3. 間隔時間: 每 10 分一次
      */10 * * * *
      
    5. 感覺

      1. 這些東西, 基本就可以滿足需要了吧

ps

  1. ref

    1. 這次是自己記住了
      1. 肯定也是以前看的, 但現在想不起來哪看的了
  2. cron

    1. 這一塊, 應該暫時完結了吧
    2. 如果再要講, 估計就涉及到底層原理了
      1. 想想就覺得不會有那一天...


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM