เครื่องมือสร้างและอธิบาย Cron Expression
อธิบาย cron expression เป็นภาษาง่ายๆ แสดงเวลารันครั้งถัดไป หรือสร้างใหม่โดยเลือกกำหนดการ
กำลังโหลดเครื่องมือ…
อธิบายนิพจน์ cron เป็นภาษาง่าย ๆ แสดงเวลาทำงาน 10 ครั้งถัดไป และสร้างนิพจน์จากตารางเวลาที่คุณเลือก ใช้เขียน crontab หรือการตั้งค่าตัวตั้งเวลางาน หรือตรวจตารางเวลาที่มีอยู่
วิธีใช้
- พิมพ์นิพจน์ เช่น 30 9 * * 1-5 ลงใน "นิพจน์ cron หรือบรรทัด crontab" ใส่บรรทัด crontab ทั้งบรรทัดพร้อมคำสั่งก็ได้
- อ่าน "แปลเป็นภาษาง่าย ๆ" และ "ทีละฟิลด์" เลือกอุปกรณ์นี้หรือ UTC เป็น "เขตเวลา" แล้วดู "การทำงาน 10 ครั้งถัดไป"
- หากต้องการสร้างใหม่ ให้เลือก "ทำซ้ำ" เวลา และวันใน "สร้างนิพจน์" หรือกด "ใช้" ข้างตัวอย่างใดตัวอย่างหนึ่งใน "ตัวอย่างที่ใช้บ่อย"
- กด "คัดลอกนิพจน์" แล้ววางลงใน crontab หรือไฟล์การตั้งค่าของคุณ
หลักการทำงาน
- cron มาตรฐานมี 5 ฟิลด์: นาที ชั่วโมง วันที่ของเดือน เดือน และวันในสัปดาห์ (0 ถึง 7 โดย 0 และ 7 คือวันอาทิตย์) รูปแบบ 6 ฟิลด์ที่มีวินาทีอยู่ข้างหน้า และชื่อย่อ เช่น @daily ก็อ่านได้เช่นกัน
- เมื่อเปลี่ยน "รูปแบบ" เป็น "Quartz (Java, Spring)" จะใช้ ?, L, W, # และฟิลด์ปีได้ และวันในสัปดาห์จะเป็น 1 ถึง 7 (1 คือวันอาทิตย์)
- เมื่อจำกัดทั้งวันที่ของเดือนและวันในสัปดาห์ งานจะทำงานเมื่อตรงกับอย่างใดอย่างหนึ่ง หากฟิลด์ใดฟิลด์หนึ่งขึ้นต้นด้วย * ต้องตรงทั้งสองอย่าง ข้อผิดพลาดทางไวยากรณ์จะแสดงพร้อมตำแหน่งอักขระ
คำถามที่พบบ่อย
- นิพจน์ cron สำหรับทุกวันตอนตี 3 คืออะไร
- 0 3 * * * คือนาที 0 ชั่วโมง 3 และทุกค่าในฟิลด์อื่น จึงทำงานทุกวันเวลา 03:00
- จะให้ cron job ทำงานทุก 5 นาทีได้อย่างไร
- ใส่ */5 ในฟิลด์นาที: */5 * * * * จะทำงานที่นาที 0, 5, 10 ไปเรื่อย ๆ
- จะให้งานทำงานเฉพาะวันธรรมดาเวลา 9 โมงเช้าได้อย่างไร
- 0 9 * * 1-5 วันในสัปดาห์ 1-5 คือวันจันทร์ถึงวันศุกร์
- 0 0 13 * 5 ทำงานเฉพาะวันศุกร์ที่ 13 หรือไม่
- ไม่ใช่ cron มาตรฐานจะทำงานทุกวันที่ 13 ของเดือนและทุกวันศุกร์ เพราะเมื่อจำกัดทั้งสองฟิลด์วัน ตรงอย่างใดอย่างหนึ่งก็พอ