Ubuntu下添加自啟動任務


系統cron設定:/etc/crontab

通過 /etc/crontab 文件,可以設定系統定期執行的任務,當然,要想編輯這個文件,得有root權限。

讓我們打開 /etc/crontab,看看cron的語法:

# for vixie cron
#
# $Header: /var/cvsroot/gentoo-x86/sys-process/vixie-cron/files/crontab-3.0.1-r4,v 1.1 2005/03/04 23:59:48 ciaranm Exp $
#
#
 
# Global variables
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
 
# check scripts in cron.hourly, cron.daily, cron.weekly and cron.monthly
0  *  * * *     root    rm -f /var/spool/cron/lastrun/cron.hourly
1  3  * * *     root    rm -f /var/spool/cron/lastrun/cron.daily
15 4  * * 6     root    rm -f /var/spool/cron/lastrun/cron.weekly
30 5  1 * *     root    rm -f /var/spool/cron/lastrun/cron.monthly
*/10  *  * * *  root    test -x /usr/sbin/run-crons && /usr/sbin/run-crons 

真正描述執行的任務在后五行,每行代表了一個定期執行的任務,從前到后,分為3部分:

第一部分,一堆奇怪的數字和星號,這部分描述任務的執行周期和時間,后面我們將詳細解釋。

第二部分,上面的文件全部是"root",描述了執行任務時的用戶。

第三部分,為需要執行的完整命令。

第一部分分為5個小部分,沒部分可以是數字或者星號,分別代表了分鍾、小時、日期、月份、周,讓我們來看一個例子:

0   7   *    *   *    root    mpg123 ~/wakeup.mp3 
分 時 日 月 周

星號,即代表不限制,上面的例子就是:每天的7點0分,都將執行mpg123 ~/wakeup.mp3,放首歌,把自己從睡夢中叫醒~

以下是各部分的取之范圍:

 

 分鍾 0~59
 小時 0~23
 日期 1~31
 月份 1~12
0~6

 

其中周的范圍0~6,0代表星期天,1~6代表周一~周六。

讓我們來看更多的例子:

0  4  * * 0     root    emerge --sync && emerge -uD world              #每周日凌晨4點,更新系統
0  2  1 * *     root    rm -f /tmp/*                                                    #每月1號凌晨2點,清理/tmp下的文件
0  8  6  5 *   root     mail  robin < /home/galeki/happy.txt             #每年5月6日給robin發信祝他生日快樂

假如,我想每隔2分鍾就要執行某個命令,或者我想在每天的6點、12點、18點執行命令,諸如此類的周期,可以通過 “ / ” 和 “ , ” 來設置:

*/2   *   *   *   *           root      ...............      #每兩分鍾就執行........
0  6,12,18   *   *   *    root      ...............      #每天6點、12點、18點執行........

注意:運行腳本文件,需修改其屬性,使其可執行:chmod +x /.../.../test.php

由於有時不是以root用戶登錄,所以每行命令中的root可以省略,如下定時執行php腳本文件

 

* */2 * * * /usr/bin/php /home/……/……/……/……/test1.php
*/25 * * * * /usr/bin/php /home/……/……/……/……/test2.php

 

添加方式二:編寫自己的需自啟動的文件/……/……/mycron,在里面添加需自啟動的任務:

* */2 * * * /usr/bin/php /home/……/……/……/……/test1.php
*/25 * * * * /usr/bin/php /home/……/……/……/……/test2.php

然后使用"crontab /……/……/mycron"加載該文件,就能自動運行定時任務了

注意:一個用戶賬號下只能有一個自啟動文件,所有需自啟動的任務都需寫在該文件里,加載文件完成后,無需重啟cron服務,可用“crontab -e”查看所添加的自啟動任務

參照:http://os.51cto.com/art/200805/75224.htm

 

 推薦一個自己業余時間開發的網盤搜索引擎,360盤搜www.360panso.com


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM