Quartz 命令式表示式產生器
建立可審查的六或七欄 Quartz 命令式表示式,適用於間隔、週中、月度規則、最後一天以及第 n 週的週日。
隱私權:你的檔案不會離開裝置,所有處理均在瀏覽器本機完成。
使用方式
- 1.選擇 Quartz 排程結構,並僅輸入該規則顯示的欄位。
- 2.產生並驗證六欄順序、日欄問號、可選年份以及簡單英語摘要。
- 3.複製表示式並測試未來觸發時間、時區、夏令時與誤觸發行為,於目標 Quartz 排程器中。
關於Quartz 命令式表示式產生器
Quartz 命令式表示式產生器依據 Quartz 檔案中所述的欄位順序與擴充套件功能,建立排程表示式。選擇排程方式、輸入相關時間或間隔,可選擇限制為某一年,產生表示式、閱讀簡單英語摘要,並複製完整字串。此工具完全在瀏覽器中執行,不會建立、部署或執行任何工作。
Quartz 命令式表示式與經典五欄 Unix 命令式表示式不同。Quartz 需要秒、分鐘、小時、月內日期、月份、週內日期,並可選加上年。此產生器始終輸出六個必要欄位,僅在提供有效年份時才會加入第七欄。請勿僅因另一排程工具也使用「cron」一詞,就將結果貼入其中。
間隔選項會產生從零開始的秒或分鐘增量。每小時排程會固定分鐘,但不限制小時。每日排程會設定特定小時與分鐘。週中排程在週內日期欄位使用 MON-FRI,週排程則使用指定的週日名稱。月度排程可選擇數字日期、以 L 表示的最後一天,或使用 # 運算子表示第 n 週的週日。
月內日期與週內日期的處理是刻意設計的。當規則指定週日時,月內日期欄位為 ?;當規則指定數值或該月最後一天時,週內日期欄位為 ?。每日與每小時排程會使用檔案中記載的萬用字元/問號組合。此設計避免產生兩個日期欄位產生模糊或排程工具不合法的宣告。
數值輸入在輸出前會經過驗證。間隔必須為 1 至 59,分鐘為 0 至 59,小時為 0 至 23,月內日期數值為 1 至 31,第 n 次出現為 1 至 5。可選的年份欄位必須為空白或為 1970 至 2099 之間。週日會以 Quartz 指定的名稱 SUN 至 SAT 來輸出,以避免數值週日慣例的混淆。
此產生器不會計算未來觸發時間。實際執行時間取決於 Quartz 版本、觸發起始時間、日曆排除、誤觸發指令、排程器時間區段、夏令時轉換以及應用程式的生命週期。在夏令時變更期間,本機牆時間可能被跳過或重複。請確認排程器設定的時區,並在相同會執行工作的 Quartz 環境中測試未來幾次觸發時間。
最後一天與第 n 週日選項使用了 Quartz 的實用擴充套件功能,但刻意不提供所有可能組合。此專注的建造工具不會產生最近的週日 W、與 L 的偏移、任意列表、月名、多範圍、混合增量、日曆或手動編輯的專家表示式。若排程需要這些功能,請參考官方 CronExpression 檔案與專案層級測試。
若設定年份限制,排程可能在該年之後停止觸發。若欄位留空,則代表所有支援的年份,而非僅當前年份。例如,像 31 這樣的日期在較短月份中自然不會出現;此工具不會自動改為該月最後一天。若此為業務規則,請明確選擇「最後一天」選項。
八個外部測試案例會鎖定秒與分鐘增量、每小時、每日、週中、週五、最後一天以及第二個週一的排程,以對照 Quartz 檔案與原始碼行為。輸出結果是確定的,絕不會靜默裁剪無效值。請將摘要視為審查輔助,然後在生產環境的排程器中驗證表示式、時區、誤觸發政策與樣本觸發時間,再啟用工作。
方法與來源
將受限的排程選擇對映至 Quartz 的從秒到週內日期的欄位順序,套用檔案中規定的問號配對方式,驗證數值與名稱欄位,僅在支援位置輸出 L 與 #,並追加可選的 1970 至 2099 之間的年份。
常見問題
- 為何此表示式有六個欄位而不是五個?
- Quartz 包含一個必需的秒欄位,位於分鐘之前,並支援在週內日期後加上可選的年份。經典的 Unix 命令式通常只使用五個欄位。
- 問號代表什麼意思?
- Quartz 使用 ? 來表示在月內日期或週內日期中無特定值,當另一個日期欄位已承載排程限制時。
- 此表示式會使用我的瀏覽器時區嗎?
- 此字串不包含時區。Quartz 觸發器與排程器的設定決定了時區與夏令時行為。
相關工具
開發者工具 使用指南
查看全部- Convert .properties Files to JSON Online (英文原文)
- Random MAC Address On or Off: A Developer Guide (英文原文)
- Generate a JWT for Testing: HS256 Tokens in Your Browser (英文原文)
- How to Decode JWT Tokens in Angular Apps (英文原文)
- JSON Schema to Zod: Inference Limits and a Safer Path (英文原文)
- Rust: Convert a Struct to a JSON String With serde (英文原文)
- How to Convert JSON to Excel in Python (英文原文)
- JSON to CSV Alternative With Built-In Formula Protection (英文原文)
- Format a JSON File in VS Code and in Your Browser (英文原文)
- Local JavaScript Playground Alternative for Safe Testing (英文原文)
- How to Convert IPv4 to a 32-Bit Integer for Storage (英文原文)
- Convert Decimal Numbers to IEEE 754 Floating Point Format (英文原文)
- HTTP Status Codes Alternative: A Registry-First Lookup (英文原文)
- How to Edit HTML in a Browser Using a Sandboxed Preview (英文原文)
- Format HTML Code from Notepad++ Without Plugins (英文原文)
- Why Is Hello World Used in Programming: A Practical Guide (英文原文)
- How to Make Flexbox Items Fill the Container Height (英文原文)
- File Signatures List Alternative: Twelve Verified Prefixes (英文原文)
- How to Open Excel Files Online in a Browser Preview (英文原文)
- How to Convert Excel to JSON File for ITR Filing (英文原文)