crontab -e จากนั้น 0 * * * * = ทุก ๆ ชั่วโมง ... เก็บไว้ที่ไหน


14

หลังจาก sudo crontab -e (มันเขียนว่า "/tmp/crontab.XXXX70pN9h" 1L, 19C 1,1 ทั้งหมด

จากนั้นฉันบันทึกไฟล์ และเพื่อตรวจสอบ .. ? (อย่างไรฉันไม่รู้)

And to check I 
ps -e | grep cron
29818 ?        00:00:00 cron

ดังนั้น .. แต่ฉันตัดสินใจที่จะตรวจสอบอีกครั้ง แต่

sudo cat /etc/cron.hourly
cat: /etc/cron.hourly: Is a directory
xi@localhost ~ $ sudo ls /etc/cron.hourly

ไม่มีอะไร! เช่นในไดเรกทอรี

ที่ฉันเข้าใจ 0 แรกในตำแหน่งชั่วโมงหมายถึงทุก ๆ ชั่วโมงหรือไม่


ตกลงฉันจะรอหนึ่งชั่วโมง (ช่องว่างที่น้อยที่สุดในเอกสาร)
Xsi

แน่นอนคุณต้องการตรวจสอบคำถามของฉัน มีคำตอบจาก Stephane Chazelas ที่อธิบายวิธีที่คุณสามารถสร้างเชลล์แบบโต้ตอบที่เหมือนกับสภาพแวดล้อมที่งาน cron ของคุณจะเห็น ถ้าคุณทำตามขั้นตอนเล็ก ๆ ของเขาคุณจะได้รับพรอมต์และคุณสามารถทดสอบขั้นตอนการ cronjob ของคุณทีละขั้นตอนและดูว่ามันล้มเหลวที่ไหน unix.stackexchange.com/a/56503/16841 แน่นอนว่าไม่ใช่คำถามที่ตรงกัน 100% สำหรับคำถามของคุณ แต่สามารถช่วยคุณแก้ไขปัญหา crontab ได้
jippie

คำตอบ:


24

ฟิลด์ใน cron คือ:

m      h       dom             mon     dow          command
Minute Hour    Day of Month    Month   Day of week  <command>

และ0 * * * * <command>จากนั้นแปลเป็น "Execute command บนทุก ๆ ชั่วโมงทุกวันทุกเดือนและทุกวันธรรมดาถ้านาทีเป็น 0"

คุณสามารถแสดงรายการ crontab ของคุณโดยใช้crontab -lตามที่ delh ได้ระบุไว้แล้ว

ใช้ลิงค์นี้ที่นี่มีบางตัวอย่างปฏิบัติของ Cron


date [-u | --utc | --universal] [MMDDhhmm [[CC] YY] [. ss]] มันเป็นเหมือน แต่ในทางกลับกันวีซ่า
Xsi

สิ่งนี้เกี่ยวข้องกับ cron หรือไม่
Bonsi Scott

9

ของคุณcrontabและcron.hourlyเป็นนิติบุคคลแยกต่างหาก การใส่อะไรลงในของคุณcrontabไม่ได้ใส่เข้าไปcron.hourlyแม้ว่ามันจะทำงานทุกชั่วโมง วางสคริปต์ในการcron.hourlyเป็นเพียงอีกหนึ่งวิธีของการมีมันทำงานทุกชั่วโมง, ที่อยู่, คุณcronตรวจสอบภูตทั้งของคุณและcrontab cron.hourlyการมีทั้งสองอย่างนี้จะรันสองครั้ง


ศุกร์ 9 พ.ย. 15:16:01 EET 2012 xi @ localhost ~ $ ls /var/log/cron.log ls: ไม่สามารถเข้าถึง /var/log/cron.log: ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว
Xsi

3

คุณสามารถตรวจสอบว่ามีการติดตั้ง crontab โดยใช้:

sudo crontab -l

ทุก ๆ ชั่วโมงจะมีข้อความบันทึกปรากฏขึ้นเมื่อ/var/log/syslogมีการดำเนินการ

อ่านเพิ่มเติม:

http://www.linuxweblog.com/crotab-tutorial

ฉันคิดว่าศูนย์แรก (0) คือนาที แต่ถ้าคุณบอกว่าคุณต้องการทำบางสิ่งบางอย่างเมื่อนาทีเป็น 0 มันจะทำทุกชั่วโมง เพียงชั่วโมงละครั้งนาทีจะเป็นศูนย์


2

คุณสามารถเรียกใช้ cron เพียงแค่ทำตามบทช่วยสอนต่อไปนี้

http://answergig.com/48/please-provide-some-linux-cron-job-examples?show=48#q48

0 * * * *  /path

1
โดยปกติแล้วเราไม่ชอบคำตอบสำหรับลิงค์เท่านั้นเพราะลิงก์อาจตายไปตามกาลเวลา คุณสามารถทำซ้ำขั้นตอนหลักของหน้าเชื่อมโยงได้ไหม
แบร์นฮาร์ด

1

หากคุณกำลังมองหาไฟล์ cron ของผู้ใช้เพื่อดูว่ามีการเปลี่ยนแปลงเมื่อใดหรือมีลักษณะเช่นนั้นสามารถพบได้/var/spool/cron/แต่คุณอาจไม่ควรจัดการไฟล์ด้วยตนเอง


ไม่มากอาจจะไม่เป็นไม่ควร cronภูตจะไม่สังเกตเห็นการเปลี่ยนแปลงถ้าคุณแก้ไขไฟล์โดยตรง แต่การใช้งานcrontab -lไปยังรายการสำหรับผู้ใช้ในปัจจุบันcrontab -eที่จะแก้ไขสำหรับผู้ใช้ปัจจุบันและ / หรือรวมเป็นอย่างดีในการเข้าถึงของผู้ใช้ที่แตกต่างกัน-u {user} crontabนี่คือทั้งหมดที่กำหนดไว้ในหน้าคนสำหรับ crontab
roaima

ผมเชื่อว่ามีวิธีการตั้งค่าcronโดยอัตโนมัติตรวจสอบไฟล์สำหรับการเปลี่ยนแปลงถ้าคุณจริงๆต้องอัปเดตด้วยตนเอง
Molimo

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