Linux中自動化組件 — crontab

來源:互聯網
上載者:User

crontab是Linux系統在固定時間或在固定時間間隔自動執行其中預定義作業(Job)的一個自動化組件。

 

使用方式:

crontab -l列出目前使用者的所有預定義cron作業(Job)
crontab -e編輯目前使用者的cron作業(可以增加、修改和刪除)
crontab -r刪除目前使用者的所有cron作業(慎用)

 

crontab -u user -l列出指定使用者的所有預定義作業
crontab -u user -e編輯指定使用者的cron作業(可以增加、修改和刪除)
crontab -u user -r刪除指定使用者的所有cron作業(慎用)

 

命令執行的結果,無論是標準輸出還是錯誤輸出,都將以郵件形式發給使用者。

 

時程表的格式如下

f1 f2 f3 f4 f5 program

f1表示分鐘,取值範圍為0~59
f2表示小時,即幾點,取值範圍為1~23
f3表示日,即幾號,取值範圍為1~31
f4表示月份,取值範圍為1~12
f5星期,取值範圍為0~6(其中0表示星期日)
program表示要自動執行的程式

 

當f1為*時,表示每分鐘都要執行program一次,f2為*時,表示每小時都要執行program一次,以此類推;
當f1為a-b時,表示從第a分鐘到第b分鐘這段時間內要一直執行program,以此類推;
當f1為*/n時,表示每n分鐘(個時間間隔)執行program一次,當f2為*/n時,表示每n小時執行program一次,以此類推;
當f1為a,b,c,...時,表示第a,b,c,...分鐘都要執行program一次,當f2為a,b,c,...時,表示第a,b,c,...小時都要在執行program一次,以此類推;

 

例子:

#每天早上7點執行一次 /bin/ls:
0 7 * * * /bin/ls 

 

#在 12 月, 每天的早上 6 點到 12 點中,每隔3個小時執行一次 /usr/bin/backup: 
0 6-12/3 * 12 * /usr/bin/backup

 

#周一到周五每天下午 5:00 寄一封信給 alex@domain.name:
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

#若是你不希望收到這樣的信,請在行末尾空一格之後加上 > /dev/null 2>&1 即可
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata > /dev/null 2>&1

 

#每月每天的午夜 0 點 20 分, 2 點 20 分, 4 點 20 分....執行 echo "haha" 
20 0-23/2 * * * echo "haha" 

 

#每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點
0 11 4 * mon-wed date

 

#1月1日早上4點 
0 4 1 jan * date

 

檔案的位置:

1. 在/etc目錄下有一個crontab檔案,這裡存放有系統啟動並執行一些發送器。每個使用者可以建立自己的調度crontab。
2. 作業與它們預定的時間儲存在檔案/usr/spool/cron/crontabs/username裡。username使使用者名稱,在相應的檔案中存放著該使用者所要啟動並執行命令。
3. /usr/lib/cron/cron.allow表示誰能使用crontab命令。如果它是一個空檔案表明沒有一個使用者能安排作業。如果這個檔案不存在,而有另外一個檔案/usr/lib/cron/cron.deny,則只有不包括在這個檔案中的使用者才可以使用crontab命令。如果它是一個空檔案表明任何使用者都可安排作業。兩個檔案同時存在時cron.allow優先,如果都不存在,只有超級使用者可以安排作業。
4. 命令列中-r選項的作用是從/usr/spool/cron/crontabs目錄下刪除使用者定義的檔案crontab。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.