สาเหตุหลัก หนึ่งในสาเหตุที่พบบ่อยที่สุดสำหรับงาน crontab ที่ดำเนินการไม่ถูกต้องคือ cronjob ไม่ทำงานภายใต้สภาพแวดล้อมเชลล์ของผู้ใช้ อีกสาเหตุหนึ่งคือ – ไม่ระบุพาธสัมบูรณ์ของคำสั่งที่ใช้ในสคริปต์
ทำไมสคริปต์ crontab ไม่ทำงาน
เหตุผลก็คือ cron ไม่มีตัวแปรสภาพแวดล้อม PATH เดียวกันกับผู้ใช้ หากคำสั่ง crontab ของคุณมีสัญลักษณ์ % อยู่ในนั้น cron จะพยายามแปลความหมาย ดังนั้น หากคุณใช้คำสั่งใดๆ ที่มี % อยู่ในนั้น (เช่น ข้อกำหนดรูปแบบสำหรับคำสั่ง date) คุณจะต้องหลีกเลี่ยงคำสั่งนั้น
ฉันจะรันสคริปต์ crontab ได้อย่างไร
เรียกใช้สคริปต์อัตโนมัติโดยใช้ crontab
- ขั้นตอนที่ 1: ไปที่ไฟล์ crontab ของคุณ ไปที่ Terminal / อินเทอร์เฟซบรรทัดคำสั่งของคุณ …
- ขั้นตอนที่ 2: เขียนคำสั่ง cron ของคุณ …
- ขั้นตอนที่ 3: ตรวจสอบว่าคำสั่ง cron ทำงาน …
- ขั้นตอนที่ 4: การดีบักปัญหาที่อาจเกิดขึ้น
ฉันจะรันสคริปต์ Python จาก crontab ได้อย่างไร
พูดง่ายๆ นี่คือสิ่งที่คุณทำ:
- สร้างสคริปต์ Python ของคุณ
- เปิดเทอร์มินัล
- เขียน crontab -e เพื่อสร้าง crontab;
- กด i เพื่อเปิดโหมดแก้ไข
- เขียนคำสั่งกำหนดการ/usr/bin/python /path/to/file/.py;
- กด esc เพื่อออกจากโหมดแก้ไข
- เขียน:wq เพื่อเขียน crontab ของคุณ
- หากต้องการลบงานที่กำลังทำงานอยู่:
ฉันจะรู้ได้อย่างไรว่า crontab ถูกดำเนินการ
ถึงตรวจสอบว่างานนี้ดำเนินการสำเร็จหรือไม่ ตรวจสอบ the /var/log/cron file ซึ่งมีข้อมูลเกี่ยวกับงาน cron ทั้งหมดที่ได้รับการดำเนินการในระบบของคุณ ดังที่คุณเห็นจากผลลัพธ์ต่อไปนี้ งาน cron ของ john ได้ดำเนินการสำเร็จแล้ว