การใช้งาน crontab เพื่อรัน script ตามเวลาที่กําหนด

6 Apr 2017,
Share: 

cron คืออะไร?

cron เป็น utilities ตัวหนึ่งทำงานบนระบบปฏิบัติการ linux ทําหน้าที่ช่วยจัดการให้ software ของเรารันโดยอัตโนมัติ ตาม scheduling ที่เรา config ไว้

crontab คืออะไร?

crontab เป็นไฟล์ที่เก็บตาราง scheduling และรายละเอียดต่างๆ ที่เราตั้งเวลาไว้เพื่อที่จะสั่งให้ cron ทํางานอีกทีนึง

วิธีใช้งาน crontab

การใช้งานก็ง่ายๆครับ เปิดไฟล์ “/etc/crontab” ขึ้นมาแล้วแก้ไขตามที่เราต้องการ ใช้คําสั่งนี้ได้เลยครับ

sudo nano /etc/crontab

หรือ

crontab -e

จะพบเนื้อหาไฟล์ดังนี้

Image

crontab หลังจากนั้นให้เราเพิ่มบรรทัดคําสั่งต่อท้ายเข้าไป โดยรูปแบบของบรรทัดคําสั่งคือ [นาที] [ชั่วโมง] [วัน] [เดือน] [วันในสัปดาห์] [user] [โปรแกรมที่ต้องการรัน]

  • [นาที] คือ นาที ที่จะรัน Script ค่าที่เป็นไปได้คือ 0-59 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
  • [ชั่วโมง] คือ ชั่วโมง ที่จะรัน Script ค่าที่เป็นไปได้คือ 0-23 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
  • [วัน] คือ วัน ที่จะรัน Script ค่าที่เป็นไปได้คือ 1-31 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
  • [เดือน] คือ เดือน ที่จะรัน Script ค่าที่เป็นไปได้คือ 1-12 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
  • [วันในสัปดาห์] คือ วันในสัปดาห์ ที่จะรัน Script ค่าที่เป็นไปได้คือ 0-7 ถ้าเป็น * หมายถึงไม่สนใจตําแหน่งนี้
  • [user] คือ user ที่รันคําสั่ง
  • [โปรแกรมที่ต้องการรัน] คือ โปรแกรมที่ต้องการรัน เมื่อตรงตามเวลาที่กําหนด

Image

crontab

Example1

ถ้าเราต้องการจะสั่งให้รันคําสั่ง xxx ทุกๆ 5 นาที่ เราจะต้องเขียนแบบนี้

*/5 * * * * root xxx

Example2

ถ้าเราต้องการจะสั่งให้รันคําสั่ง yyy ทุกๆ 1 ชั่วโมง เราจะต้องเขียนแบบนี้

0 * * * * root yyy

รูปตัวอย่างการแก้ไข

Image

crontab เมื่อแก้ไขไฟล์เสร็จ ก็ Save ให้เรียบร้อย แล้ว Reboot เครื่อง 1 ครั้ง เป็นอันเสร็จพิธี :)

Suggestion blogs

Install FTP and Config to use SSL/TLS (SFTP) in ubuntu

ก่อนอื่นมาดูกันว่า FTP คืออะไร FTP ย่อมาจาก File Transfer Protocol ซึ่งเป็น Protocol ที่ใช้ รับ-ส่ง ไฟล์ระหว่าง server และ client ส่วน SFTP ก็เหมือนกับ FTP แต่จะเพิ่มกระบวนการ SSL/TLS เพื่อให้มีความปลอดภัยมากยิ่งขึ้น

Go EP.12 Recover ในภาษา Go

สวัสดีครับ ในบทความนี้ก็เป็น EP.12 แล้วนะครับ โดยเนื้อหาจะเป็นเรื่องเกี่ยวกับ Recover ในภาษา Go ซึ่งจะเป็นเนื้อหาที่ต่อเนื่องมาจาก Go EP.11 Panic ในภาษา Go ครับสําหรับท่านใดที่ยังไม่ได้อ่าน EP.11 ท่านสามารถกลับไปอ่านก่อนได้นะครับที่นี่ Go EP.11 Panic ในภาษา Goมาเริ่มเรียนรู้ไปด้วยกันตามหัวข้อด้านล่างเลยครับ

เริ่มต้นใช้ Linode

Linode คืออะไรLinode เป็น เป็นผู้ให้บริการ VPS (Virtual Private Server) เจ้าหนึ่ง เช่นเดียวกับ Digital Ocean และ Vultr ที่สามารถควบคุมได้ทุกอย่าง ไม่ว่าจะลงโปรแกรม หรือ Config Server ต่างๆ เหมือนเราเป็นเจ้าของ Server เครื่องนั้นๆเลย ซึ่งเบื้องหลังเค้าไม่ได้ให้เราควบคุมเครื่องจริงๆ แต่จะจําลองเครื่อง Server ขึ้นมาให้เราได้ใช้งานเสมือนว่าเราเป็น


Copyright © 2019 - 2025 thiti.dev |  v1.54.0 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Nostr   Youtube channel   Telegram   Email contact   วงแหวนเว็บ