ตัวแยกและแปลนิพจน์ Cron

วิเคราะห์ ถอดรหัส และแปลงนิพจน์ Cron เป็นคำอธิบายภาษาธรรมดา พร้อมรอบการทำงานถัดไป

ตัวแยกและแปลนิพจน์ Cron

วิเคราะห์ ถอดรหัส และแปลงนิพจน์ Cron เป็นคำอธิบายภาษาธรรมดา พร้อมรอบการทำงานถัดไป

วิธีการทำงาน

1
Enter or Paste Text
Type or paste your text, code, or data directly into the input workspace.
2
Apply Transformation
Run the tool to convert, filter, format, or inspect your text content.
3
Copy Output
Copy the clean processed output to your clipboard with a single click.
ศูนย์ความรู้และแนวคิด

เครื่องมือสร้างและอธิบายไวยากรณ์ Cron Expression มาตรฐาน POSIX Crontab

Cron Expression เป็นรูปแบบสตริงมาตรฐานที่ใช้กำหนดตารางเวลาการทำงานอัตโนมัติของสคริปต์และงานเบื้องหลัง (Cron Job) ในระบบปฏิบัติการ Linux, เซิร์ฟเวอร์ และระบบคลาวด์ เครื่องมือนี้ช่วยให้นักพัฒนาสามารถสร้าง แก้ไข และเข้าใจการตั้งเวลาได้อย่างง่ายดายผ่านอินเทอร์เฟซที่ใช้งานสะดวก

รองรับไวยากรณ์มาตรฐาน POSIX 5 ส่วน (นาที, ชั่วโมง, วันที่, เดือน, วันในสัปดาห์) พร้อมคำอธิบายเป็นภาษาที่มนุษย์เข้าใจได้ทันที ช่วยลดความผิดพลาดในการตั้งเวลางานสำคัญ เช่น แบ็กอัปฐานข้อมูล หรือการส่งอีเมลแจ้งเตือน ทำงานในเบราว์เซอร์ 100%

สูตรและหลักการทางเทคนิค

ไวยากรณ์ POSIX Crontab: [นาที: 0-59] [ชั่วโมง: 0-23] [วันที่: 1-31] [เดือน: 1-12] [วันในสัปดาห์: 0-6 (0=อาทิตย์)]

โครงสร้างมาตรฐาน 5 ช่อง รองรับเครื่องหมายดอกจัน (*), ช่วงตัวเลข (x-y), ก้าวช่วง (/n) และรายการตัวคั่นจุลภาค (a,b,c)

ข้อแนะนำและวิธีปฏิบัติที่ถูกต้อง

  • ทำความเข้าใจความหมายของเครื่องหมายพิเศษใน Cron: เครื่องหมาย * หมายถึงทุกช่วงเวลา, เครื่องหมาย /n หมายถึงทุกๆ ก้าว n หน่วย, เครื่องหมาย - หมายถึงช่วงเวลา และเครื่องหมายจุลภาคคั่นรายการ
  • ระวังความสับสนระหว่าง 'วันที่ของเดือน' และ 'วันในสัปดาห์': ในระบบ Cron ส่วนใหญ่ หากระบุทั้งวันที่และวันในสัปดาห์ งานจะทำงานเมื่อเงื่อนไขใดเงื่อนไขหนึ่งตรง (OR logic) หากต้องการระบุอย่างใดอย่างหนึ่งควรใส่อีกช่องเป็น *
  • ตรวจสอบโซนเวลา (Timezone) ของเซิร์ฟเวอร์เสมอ: Cron ทำงานตามเวลาของเครื่องเซิร์ฟเวอร์ (มักตั้งเป็น UTC) ควรแปลงเวลาท้องถิ่นให้ตรงกับเวลา UTC ของเซิร์ฟเวอร์เพื่อไม่ให้งานรันผิดเวลา
  • ทดสอบจังหวะเวลาของงานที่ใช้ทรัพยากรสูง: หลีกเลี่ยงการตั้งค่างานหนักให้รันตรงกับช่วงต้นชั่วโมง (เช่น นาทีที่ 00) พร้อมกันหลายงาน ควรกระจายนาทีเพื่อเกลี่ยโหลดของระบบ

คำถามที่พบบ่อย (FAQ)

สัญลักษณ์ 5 ช่องของ Crontab เรียงลำดับอย่างไร?
เรียงลำดับจากซ้ายไปขวา ได้แก่: 1. นาที (0-59), 2. ชั่วโมง (0-23), 3. วันที่ของเดือน (1-31), 4. เดือน (1-12), 5. วันในสัปดาห์ (0-6 โดย 0 คือวันอาทิตย์)
สัญลักษณ์ */15 หมายถึงอะไร?
หมายถึงการทำงานทุกๆ 15 หน่วย เช่น หากใส่ในช่องนาที จะหมายถึงทำงานทุกๆ 15 นาที (ที่นาที 0, 15, 30, 45)
เหตุใดงาน Cron ในเซิร์ฟเวอร์จึงไม่รันตามเวลาที่คาดหมาย?
สาเหตุที่พบบ่อยที่สุดคือความแตกต่างของโซนเวลา (Timezone) ระหว่างเซิร์ฟเวอร์กับเวลาท้องถิ่น หรือตัวแปรสภาพแวดล้อม (Environment Variables) เช่น PATH ใน Cron แตกต่างจากการรันในเทอร์มินัลปกติ
เครื่องมือนี้มีการส่งคำสั่ง Cron ของฉันออกนอกอุปกรณ์หรือไม่?
ไม่มีการส่งข้อมูล ทุกการวิเคราะห์และถอดรหัสข้อความ Cron ทำงานในเบราว์เซอร์ของคุณ 100%