ประเด็นสำคัญ
- 01คำอธิบาย plain-English ทำให้ง่ายต่อการยืนยันว่างาน cron จะทำอะไรจริงๆ ก่อนที่คุณจะปรับใช้
- 02ห้าเวลาเรียกใช้ UTC ถัดไปแสดงในรูปแบบ ISO-8601 สำหรับการตรวจสอบที่ปลอดภัยจากเขตเวลา
- 03สนับสนุน ranges (1-5) รายชื่อ (1,3,5) และ steps (*/15) ตามกฎ Vixie-cron มาตรฐาน
- 04ทุกอย่างทำงานในเบราว์เซอร์ของคุณ — ไม่มี backend ไม่มีบัญชี ไม่มีคำขอเครือข่าย
เหตุใด Cron Expressions จึงเป็นเรื่องง่ายที่จะทำผิด
ไวยากรณ์ Cron เป็นข้อมูลโดยการออกแบบ แต่ความเป็นส่วนตัวนั้นทำให้มันเป็นเรื่องที่น่าประหลาดใจที่สามารถนัดหมายงานในเวลาผิด การสำรองข้อมูลเที่ยงคืนที่ยิงที่เที่ยง UTC step expression ที่พลาดเวลาที่คาดไว้ หรือค่า day-of-week ที่ปิดลง — ข้อบกพร่องเหล่านี้ยากต่อการจับได้จนกว่าจะไม่เรียกใช้งานเงียบบนวันจันทร์ เช้า อ่าน 0 */6 * * 1-5 ออกเสียงดังไม่บอกคุณอะไรมากนักเว้นแต่คุณจะรู้ลำดับ field ด้วยหัวใจ
ตัวสร้าง cron ของ Handytool แก้ปัญหาโดยแปลนิพจน์ที่ถูกต้องใดๆ เข้าไปในประโยคที่คุณสามารถอ่านได้จริง จากนั้นแสดงห้าครั้งที่มันจะยิงใน UTC ก็จับข้อผิดพลาดก่อนถึงการผลิต ไม่หลังจากงาน cron ที่กำหนดเวลาไม่ได้ในวันจันทร์ เช้า
วิธีการสร้างและตรวจสอบนิพจน์ Cron
- 01
เริ่มต้นด้วย preset หรือพิมพ์ของคุณเอง
Presets เช่น Every minute Hourly Daily at midnight และ Weekly on Monday ให้จุดเริ่มต้นที่ถูกต้อง สลับไปยังการป้อนข้อมูลด้วยตนเองสำหรับตารางเวลาที่กำหนดเอง
- 02
ป้อนเขตข้อมูล 5 ของคุณ
พิมพ์นิพจน์ตามลำดับนาทีชั่วโมง day-of-month เดือน day-of-week ตัวสร้างตรวจสอบขอบเขตแต่ละเขตขณะที่คุณพิมพ์
- 03
อ่านคำอธิบาย plain-English
การอธิบายอัปเดตสดใจ ยืนยันประโยคตรงกับความตั้งใจของคุณ — ตัวอย่างเช่น 'at :00 ในทุก 6 ชั่วโมงที่ 6 วันจันทร์ถึงศุกร์'
- 04
ตรวจสอบเวลาเรียกใช้ 5 ครั้งถัดไป
เวลากำลังหน้าคือรายชื่อใน UTC ISO-8601 ใช้เพื่อตรวจสอบ edge cases เช่นขอบเขต end-of-month หรือ time zone offsets
Cron Syntax Quick Reference
ทั้งห้าเขตตามกฎเหล่านี้:
- 01เครื่องหมายดอกจัน (*) หมายถึงทุกค่าที่ถูกต้องในเขต
- 02Slash (*/N) ขั้นตอนผ่านช่วง N
- 03Dash (A-B) ตรงกับทุกค่าจาก A ถึง B รวม
- 04Comma (A,B,C) ตรงกับรายชื่อค่าที่เฉพาะเจาะจง
- 05ช่วง field: นาที 0-59 ชั่วโมง 0-23 วัน 1-31 เดือน 1-12 วันหยุด 0-6 (Sunday = 0)
ไม่มีติดตั้ง ไม่มี Server
ตัวสร้าง cron แยก expression และคำนวณเวลา next-run โดยสิ้นเชิงในเบราว์เซอร์ของคุณโดยใช้ JavaScript ไม่มีสิ่งใดส่งไปยังเซิร์ฟเวอร์ ดังนั้นไม่มีลงทะเบียน ไม่มี API quota และไม่มี latency การคำนวณ next-runs จำลอง minute-by-minute ตรงกับกฎ Vixie-cron มาตรฐาน ซึ่งเป็นแนวทางเดียวกับที่ใช้โดยตัวกำหนดเวลาผลิตส่วนใหญ่
6-field expression (พร้อมเขต second นำหน้า) และสตริง special เช่น @daily หรือ @weekly ไม่ได้รับการสนับสนุน ส่วนใหญ่สภาพแวดล้อมการผลิต — รวมถึง cron เอง Kubernetes และ GitHub Actions — ใช้แบบฟอร์ม 5-field มาตรฐาน ดังนั้นตัวสร้างจึงมุ่งเน้นไปที่สิ่งนั้น
Cron Expression Builder คำถามที่พบบ่อย
ตัวสร้างนี้สนับสนุน cron flavor ใด
5-field Vixie-cron มาตรฐาน: นาที ชั่วโมง day-of-month เดือน day-of-week @daily/@weekly shorthand และ 6-field seconds syntax ไม่ได้รับการสนับสนุน เนื่องจากตัวกำหนดเวลาการผลิตส่วนใหญ่ใช้แบบฟอร์ม 5-field
เหตุใดเวลาเรียกใช้ถัดไปจึงแสดงใน UTC
ระบบ CI/CD และกำหนดเวลาหลักสูตร cloud ส่วนใหญ่ตีความนิพจน์ cron ใน UTC การแสดง UTC เก็บการแสดงตัวอย่างแบบพกพาและหลีกเลี่ยงการแสดง local-time ที่ทำให้เข้าใจผิด
ความแตกต่างระหว่าง */15 และ 0,15,30,45 ในเขต minute คืออะไร
ทั้งไฟยิงทุก 15 นาที */15 เริ่มจาก 0 และขั้นตอนโดย 15 ซึ่งเทียบเท่ากับ 0,15,30,45 สำหรับเขต hour */6 หมายถึง 0,6,12,18
ฉันสามารถกำหนดเวลางานในวันสุดท้ายของเดือน
มาตรฐาน cron ไม่มีโทเค็น 'last day' คุณสามารถประมาณ 28-31 ในเขต day แต่เพื่อจัดการเดือนที่สั้นกว่า 31 วันอย่างสะอาด ให้ตรวจสอบวันที่ภายในสคริปต์งาน
มีวิธีเรียกใช้งานทุกวันหยุดเรียนที่ 9 AM
ใช่: 0 9 * * 1-5 ยิงที่ 09:00 UTC วันจันทร์ถึงศุกร์ ตรวจสอบใน output plain-English ของตัวสร้างและรายชื่อ next-run ก่อนปรับใช้