การตั้งค่าวันเวลาที่จะให้?Cronjob ทำงาน

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

  1. Minute – นาทีที่เราต้องการให้ทำงาน (0-59)
  2. Hour – ชั่วโมงที่เราต้องการให้ทำงาน (0-23)
  3. Day of Month – วันในเดือนนั้นๆ (1-31)
  4. Month – เดือนที่ต้องการ (1-12)
  5. Day of Week – วันใน 1 อาทิตย์ (0-7 ?โดย 0 และ 7 จะหมายถึงวันอาทิตย์)

 

จากข้อมูลด้านบน เราต้องตั้งค่าทั้งหมดให้ครบทั้ง 5 ชนิดข้อมูล โดยแต่ละการกำหนดค่า ยังมีการตั้งค่าที่ล้ำลึกซับซ้อนไปมากกว่านี้อีก โดยเราจะอธิบายดังนี้

  • ไม่ระบุหรือตั้งค่าให้ทันทุก ๆ ครั้ง เราจะใช้การกำหนดเป็นเครื่องหมาย “*” แทนค่าตัวเลข
  • ต้องการระบุตายตัว เช่นอยากให้ทำงานแค่วันที่ 1,2 และ 3 เราสามารถใช้เครื่องหมาย “,” ในการกำหนดค่า จะได้ว่า 1,2,3 เป็นค่าที่ต้องการ
  • กำหนดเป็นช่วงของเวลา เช่นต้องการให้ทำงานในนาทีที่ 5 จนถึงนาทีที่ 10 เราสามารถใช้เครื่องหมาย “-“ ในการกำหนดค่า จะได้ว่า 5-10 เป็นค่าที่เรากำหนดค่า
  • การกำหนดทุก ๆ ช่วงเวลาที่เป็นค่าตายตัว เช่นกำหนดค่าว่าเป็นทุก ๆ 2 นาที เราสามารถใช้เครื่องหมาย “*/x” ซึ่ง x มีค่าเท่ากับตัวเลขที่ต้องการ จะได้ว่า */2 นั่นเอง
  • การกำหนดค่าแบบผสมผสาน เราจะยกตัวอย่างให้เห็นได้ชัดเจนดังนี้
    • ต้องการนาทีที่ 1 และนาทีที่ 5
    • ต้องการนาที่ที่ 11 ถึงนาทีที่ 15
    • ต้องการทุก ๆ 2 นาที ตั้งแต่นาทีที่ 3o จนถึงนาทีที่ 59

    จากตัวอย่างด้านบนนี้ เป็นการเจาะลึก การตั้งค่า?Cronjob อย่างแท้จริง เพราะว่าเป็นการตั้งค่าแบบผสมผสาน และเอารูปแบบการตั้งค่าต่าง ๆ มาใช้งานร่วมกัน เพื่อให้เข้าใจคำสั่งในการตั้งค่ามากยิ่งขึ้นนั่นเอง การตั้งค่าที่ได้คือ?1,5,11-15,30-59/2 (สังเกตุดูให้ดี จะไม่มีช่องว่างนะครับ)

และนี่เป็นการตั้งค่าในรูปแบบต่าง ๆ เพื่อให้?Cronjob นั้นทำงานตามวันเวลาที่เราสามารถกำหนดได้หลากหลายรูปแบบ ตามลักษณะงานนั่นเอง

 

ตั้งค่า Cronjobs

บนโฮสเรามีหลายเวอชั่น เช่น php5.6 , 7.0 , 7.2 , 7.3 การตั้งค่า cron จึงต้องระบุเวอชั่น PHP ที่ต้องการใช้งาน เช่น

/usr/local/php56/bin/php -q "/home/user/domains/yourdomain.com/public_html/path/cron.php"
/usr/local/php70/bin/php -q "/home/user/domains/yourdomain.com/public_html/path/cron.php"
/usr/local/php72/bin/php -q "/home/user/domains/yourdomain.com/public_html/path/cron.php"
/usr/local/php73/bin/php -q "/home/user/domains/yourdomain.com/public_html/path/cron.php"
  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

วิธีดู Username/Password ของ admin

สามารถดู Username/Password ของ admin ได้โดย 1 cat...

จำรหัสผ่านไม่ได้ FORGOT ADMIN PASSWORD

วันดีคืนดีก็เกินลืมรหัสผ่านของ admin ขึ้นมาซะดื้อๆ ครั้นจะลองเดาแล้วก็ ไม่ใช่ซักรหัสเลย...

วิธี เปลี่ยนภาษาเมนู DirectAdmin เป็นภาษาไทย หรือ ภาษาอังกฤษ Language DirectAdmin

วิธี เปลี่ยนภาษาเมนู DirectAdmin เป็นภาษาไทย หรือ ภาษาอังกฤษ Language DirectAdmin 1....

วิธี เปลี่ยนภาษาเมนู DirectAdmin เป็นภาษาไทย หรือ ภาษาอังกฤษ Language DirectAdmin

วิธี เปลี่ยนภาษาเมนู DirectAdmin เป็นภาษาไทย หรือ ภาษาอังกฤษ Language DirectAdmin 1....

วิธี เปลี่ยนภาษาเมนู DirectAdmin เป็นภาษาไทย หรือ ภาษาอังกฤษ Language DirectAdmin

วิธี เปลี่ยนภาษาเมนู DirectAdmin เป็นภาษาไทย หรือ ภาษาอังกฤษ Language DirectAdmin 1....