เครื่องมือภาษาไทย / สร้างและอธิบาย Cron Expression (Cron Generator) ภาษาคนEnglish version →
สร้างและอธิบาย Cron Expression (Cron Generator) ภาษาคน
cron คือ 5 ช่องคั่นด้วยช่องว่าง: นาที ชั่วโมง วันที่ เดือน วันในสัปดาห์ — กระชับแต่พลาดง่าย และความพลาดมักเงียบ: งานรันผิดเวลาหรือไม่รันเลยโดยไม่มี error เครื่องมือนี้แปลนิพจน์เป็นภาษาคนแบบเรียลไทม์ พร้อมแสดงเวลารันจริง 5 ครั้งถัดไปตาม timezone ของเครื่องคุณ ให้ตรวจก่อน deploy ได้ใน 10 วินาที
มีตัวช่วยครบ: preset 12 ตารางเวลายอดนิยม, ไฮไลต์ช่องที่ syntax ผิดพร้อมบอกช่วงค่าที่ถูก, และคำเตือนอัตโนมัติเมื่อเข้าเงื่อนไข OR-rule (ตั้งทั้งวันที่และวันในสัปดาห์พร้อมกัน = รันเมื่อ 'อย่างใดอย่างหนึ่ง' ตรง ไม่ใช่ทั้งคู่ — กับดักที่ทำให้งานรันบ่อยกว่าที่ตั้งใจมานักต่อนัก)
วิธีใช้งาน
- พิมพ์ cron expression หรือกดเลือกจาก preset ตารางเวลายอดนิยม
- อ่านคำอธิบายภาษาคนและเวลารัน 5 ครั้งถัดไป (เวลาท้องถิ่น + UTC)
- คัดลอกนิพจน์ไปใช้ใน crontab, Kubernetes CronJob หรือ GitHub Actions
คำถามที่พบบ่อย
- cron รันตาม timezone ไหน
- ตามนาฬิกาของเครื่องที่รัน scheduler — server ที่ตั้ง UTC จะรัน 0 9 * * * ตอนบ่ายสี่โมงเวลาไทย เขียน comment กำกับ timezone ไว้เสมอ และใน Kubernetes ตั้ง spec.timeZone ให้ชัด
- ตั้ง 'ทุกวันศุกร์ที่ 13' ทำไมรันถี่ผิดปกติ
- เพราะ OR-rule ของ POSIX cron: เมื่อกำหนดทั้งวันที่ (13) และวันในสัปดาห์ (ศุกร์) งานจะรันเมื่อเงื่อนไข 'ข้อใดข้อหนึ่ง' ตรง — คือทุกวันที่ 13 และทุกวันศุกร์ ทางแก้คือตั้งช่องเดียวแล้วเช็คอีกเงื่อนไขในสคริปต์
- expression 6 ช่องใช้ที่นี่ได้ไหม
- 6-7 ช่องคือ dialect ของ Quartz/Spring ที่มีช่องวินาที — cron มาตรฐานมี 5 ช่อง ระบบจะเตือนพร้อมแนะนำให้ตัดช่องวินาทีออกเมื่อตรวจพบ