วิธีตั้งค่า Crontab เพื่อเรียกใช้สคริปต์ในช่วงเวลาที่กำหนด

คุณกำลังมองหาวิธีการทำงานอัตโนมัติบนเซิร์ฟเวอร์หรือเครื่องของคุณโดยใช้ cron อยู่หรือเปล่า? คำถามที่พบบ่อยในหมู่ผู้ใช้ใหม่คือ วิธีการตั้งค่า crontab entry เพื่อเรียกใช้สคริปต์ในช่วงเวลาที่กำหนด ในโพสต์นี้เราจะมุ่งเน้นไปที่การเรียกใช้สคริปต์ทุกวันในเวลา 23:59 น. โดยไม่ต้องรับการแจ้งเตือนทางอีเมลที่น่ารำคาญหรือต้องสร้างบันทึก มาสำรวจวิธีการทำเช่นนี้ไปทีละขั้นตอนกันเถอะ

ทำความเข้าใจกับ Crontab

Crontab เป็นโปรแกรมจัดตารางงานตามเวลาในระบบปฏิบัติการที่คล้าย Unix มันช่วยให้ผู้ใช้สามารถจัดตารางงาน (คำสั่งหรือสคริปต์) เพื่อให้ทำงานตามระยะเวลา หรือเวลาที่กำหนดไว้ ไฟล์ crontab จะประกอบด้วยรายการคำสั่งที่ต้องทำงานในเวลาที่กำหนด นี่คือรูปแบบที่คุณจะทำงานด้วย:

* * * * * command_to_execute

แต่ละดาวหมายถึงหน่วยเวลา:

  • * ตัวแรกสำหรับนาที (0-59)
  • * ตัวที่สองสำหรับชั่วโมง (0-23)
  • * ตัวที่สามสำหรับวันในเดือน (1-31)
  • * ตัวที่สี่สำหรับเดือน (1-12)
  • * ตัวที่ห้าสำหรับวันในสัปดาห์ (0-7 โดยที่ทั้ง 0 และ 7 หมายถึงวันอาทิตย์)

การตั้งค่า Crontab Entry ของคุณ

ในการตั้งค่า crontab ของคุณเพื่อเรียกใช้สคริปต์ในเวลา 23:59 น. ทุกวัน ให้ทำตามขั้นตอนต่อไปนี้:

  1. เปิดโปรแกรมแก้ไข crontab: คุณสามารถเปิด crontab ของคุณได้โดยรันคำสั่งต่อไปนี้ในเทอร์มินัลของคุณ:

    crontab -e
    
  2. ป้อนคำสั่ง crontab: เพิ่มบรรทัดต่อไปนี้เพื่อเรียกใช้สคริปต์ของคุณในช่วงเวลาที่ต้องการ:

    59 23 * * * /path/to/your/script.sh > /dev/null 2>&1
    

    ต่อไปนี้คือความหมายของแต่ละส่วน:

    • 59 - ระบุว่าคำสั่งควรทำงานที่นาทีที่ 59
    • 23 - ระบุว่าคำสั่งควรทำงานที่ชั่วโมงที่ 23 (23.00 น. หรือ 11 PM)
    • * * * - ดาวหมายถึงคำสั่งควรทำงานทุกวัน ทุกเดือน และทุกวันในสัปดาห์
    • /path/to/your/script.sh - แทนที่ด้วยเส้นทางจริงไปยังสคริปต์ของคุณ
    • > /dev/null 2>&1 - ส่วนนี้จะเปลี่ยนเส้นทางทั้งผลลัพธ์มาตรฐานและข้อผิดพลาดมาตรฐานไปยัง /dev/null ป้องกันไม่ให้มีอีเมลและการสร้างบันทึก

หลีกเลี่ยงการส่งอีเมลและการสร้างบันทึก

โดยการเพิ่ม > /dev/null 2>&1 คุณจะมั่นใจได้ว่าไม่มีผลลัพธ์จากสคริปต์ของคุณจะถูกส่งไปยังอีเมลของคุณ และจะไม่ถูกบันทึกที่ใด ทำให้ crontab ของคุณสะอาดและลดความยุ่งเหยิงในกล่องจดหมายของคุณ โดยเฉพาะอย่างยิ่งสำหรับสคริปต์ที่ทำงานบ่อยแต่ไม่ต้องการรายงาน

ข้อคิดสุดท้าย

การตั้งค่า crontab ของคุณเป็นวิธีที่ง่ายแต่ทรงพลังในการทำงานอัตโนมัติ โดยการทำตามขั้นตอนข้างต้น คุณสามารถกำหนดตารางให้สคริปต์ทำงานทุกวันในเวลา 23:59 น. โดยไม่ต้องกังวลเกี่ยวกับอีเมลหรือบันทึก

สำหรับข้อมูลที่ครอบคลุมมากขึ้นเกี่ยวกับ crontab คุณสามารถตรวจสอบหน้า man โดยการรัน man crontab ในเทอร์มินัลของคุณ ซึ่งจะมีตัวอย่างที่ดีและคำอธิบายเพิ่มเติม

ตอนนี้คุณสามารถนั่งพักและให้คอมพิวเตอร์ของคุณจัดการงานซ้ำซ้อนได้แล้ว!