วิธีการรัน cron job ทุก 2 ชั่วโมง


237

ฉันจะเขียน Crontab ที่จะเรียกใช้/home/username/test.shสคริปต์ของฉันทุก 2 ชั่วโมงได้อย่างไร

คำตอบ:


385

แค่ทำ:

0 */2 * * *  /home/username/test.sh 

0 ที่จุดเริ่มต้นหมายถึงการทำงานในนาทีที่ 0 (ถ้าเป็น * สคริปต์จะทำงานทุกนาทีในทุก ๆ ชั่วโมงที่สอง)

อย่าลืมคุณสามารถตรวจสอบ syslog เพื่อดูว่ามันวิ่งจริงหรือไม่!


@ ernest-conill คุณจะบอกได้อย่างไร? ประวัติการแก้ไขไม่ได้มีรุ่นที่มีรหัสที่แตกต่างกัน: stackoverflow.com/posts/6423532/revisions
tutuDajuju

102

บรรทัดควรอ่านอย่างใดอย่างหนึ่ง:

0 0-23/2 * * * /home/username/test.sh

หรือ

0 0,2,4,6,8,10,12,14,16,18,20,22 * * * /home/username/test.sh

3
"0-23 / 2" - ระหว่างชั่วโมง 0 ถึง 23 ทำงานทุก 2 ชั่วโมง
James Anderson

0-23 / 2 ดีกว่า * / 2
กาด

2
@Kad ทำไมมันเป็นเช่นนั้น?
Ciprian Tomoiagă

แล้วชั่วโมงแปลกล่ะ? ฉันสามารถเพิ่ม +1
Shravya Boggarapu

หาก cron ของคุณรองรับ0-23/2เป็นทุก ๆ ชั่วโมงและ1-23/2ทุกชั่วโมงแปลก ๆ แต่ฉันก็*/2ยังต้องการ
Betlista


4

0 * / 1 * * *“ ในนาทีที่ 0 ผ่านมาทุกชั่วโมง”

0 * / 2 * * *“ ในนาทีที่ 0 ผ่านมาทุกชั่วโมงที่ 2”

นี่เป็นวิธีที่เหมาะสมในการตั้ง cronjobs ทุก ๆ ชั่วโมง


0

ในการเข้าสู่ crontab:

crontab -e

เขียนสิ่งนี้ลงในไฟล์:

0 */2 * * * python/php/java yourfilepath

ตัวอย่าง:0 */2 * * * python ec2-user/home/demo.py

และตรวจสอบให้แน่ใจว่าคุณมีบรรทัดว่างหนึ่งบรรทัดหลังจากงาน cron สุดท้ายในไฟล์ crontab ของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.