วิธีการตั้งค่าเวลาในตารางเวลาอัตโนมัติ (Cron)

เพิ่งเริ่มใช้ระบบใหม่แต่ติดตรง ‘Cron’ ใช่ไหม? ไม่ต้องตกใจไปครับ บทความนี้จะสรุปแบบรวบรัดว่ามันคืออะไร และทำไมเจ้า ‘ระบบตั้งเวลาอัตโนมัติ’ นี้ถึงเป็นตัวช่วยสำคัญที่จะทำให้งานยากๆ กลายเป็นเรื่องง่ายในพริบตา

การตั้ง Cron จะแบ่งออกเป็น 5 ส่วนดังนี้

นาที ชั่วโมง วันที่ เดือน วันในสัปดาห์

และค่า syntax เพิ่มเติมดังนี้

– สำหรับการตั้งระยะเวลา เช่น 0 9-17 * * * หมายถึงว่า รันทุกต้นชั่วโมง ตั้งแต่ 9 โมงเช้า ถึง 5 โมงเย็น (09:00, 10:00, … ไปจนถึง 17:00)
, สำหรับระบุค่าเจาะจง เช่น 0 8,12,20 * * * หมายถึง รันเฉพาะตอน 8 โมงเช้า, เที่ยงวัน, และ 2 ทุ่ม เท่านั้น
* สำหรับการตั้งค่าทุกครั้ง เช่น 30 * * * * หมายถึง นาทีที่ 30 ของ ทุกๆ ชั่วโมง ของ ทุกๆ วัน
/ สำหรับการตั้งเว้นระยะ เช่น */15 * * * * หมายถึง รัน ทุกๆ 15 นาที

ตัวอย่างการใช้งาน อยากตั้งให้รีเซิร์ฟเวอร์ทุก 1 ชั่วโมง

image

สำหรับตั้งได้ทั้ง 2 แบบ
0 * * * * (นิยมที่สุด)
0 */1 * * * (ไม่ค่อยนิยม แต่มีความชัดเจน)