centos中crontab(計時器)用法詳解

來源:互聯網
上載者:User

標籤:

關於crontab

  crontab命令常見於Unix和類Unix的作業系統之中,用於設定周期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於“crontab”檔案中,以供之後讀取和執行。該詞來源於希臘語 chronos(χρ?νο?),原意是時間。
  通常,crontab儲存的指令被守護進程啟用, crond常常在後台運行,每一分鐘檢查是否有預定的作業需要執行。這類作業一般稱為cron jobs。

 

安裝crontab:

[[email protected] ~]# yum install vixie-cron[[email protected] ~]# yum install crontabs

 

說明:
vixie-cron軟體包是cron的主程式;
crontabs軟體包是用來安裝、卸裝、或列舉用來驅動 cron 守護進程的表格的程式。

cron 是linux的內建服務,但它不自動起來,可以用以下的方法啟動、關閉這個服務:

/sbin/service crond start #啟動服務/sbin/service crond stop #關閉服務/sbin/service crond restart #重啟服務/sbin/service crond reload #重新載入配置

 

查看crontab服務狀態:

service crond status

 

手動啟動crontab服務:

service crond start

 

其他命令:

#查看crontab服務是否已設定為開機啟動,執行命令:ntsysv#加入開機自動啟動:chkconfig --level 35 crond on#列出crontab檔案crontab -l#編輯crontab檔案crontab -e#刪除crontab檔案$ crontab -r#恢複丟失的crontab檔案#假設你在自己的$HOME目錄下還有一個備份,那麼可以將其拷貝到/var/spool/cron/<username>,其中<username >是使用者名稱#或者使用如下命令其中,<filename>是你在$HOME目錄中副本的檔案名稱crontab <filename>

 

記錄檔:/var/log/cron*  

 

補充:

1、crontab相關命令

功能說明:設定計時器。

語  法:crontab [-u <使用者名稱稱>][設定檔] 或 crontab [-u <使用者名稱稱>][-elr]

補充說明:cron是一個常駐服務,它提供計時器的功能,讓使用者在特定的時間得以執行預設的指令或程式。只要使用者會編輯計時器的設定檔,就可以使用計時器的功能。

設定檔格式:Minute Hour Day Month DayOFWeek Command

參  數:
-e  編輯該使用者的計時器設定。
-l  列出該使用者的計時器設定。
-r  刪除該使用者的計時器設定。
-u<使用者名稱稱>  指定要設定計時器的使用者名稱稱。

 

2、crontab 設定檔格式

  基本格式 :
  *      *   *   *   *  command
  分   時  日  月  周   命令

  第1列表示分鐘1~59 每分鐘用*或者 */1表示
  第2列表示小時1~23(0表示0點)
  第3列表示日期1~31
  第4列表示月份1~12
  第5列標識號星期0~6(0表示星期天)
  第6列要啟動並執行命令

 

crontab檔案的一些例子:

#每晚的21:30 重啟apache30 21 * * * /usr/local/etc/rc.d/lighttpd restart
#每月1、10、22日的4 : 45重啟apache45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
#每周六、周日的1 : 10重啟apache10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
#每天18 : 00至23 : 00之間每隔30分鐘重啟apache0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
#每星期六的11 : 00 pm重啟apache0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
#晚上11點到早上7點之間,每隔一小時重啟apache* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
#每一小時重啟apache* */1 * * * /usr/local/etc/rc.d/lighttpd restart
#每月的4號與每周一到周三的11點重啟apache0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
#一月一號的4點重啟apache0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
#每半小時同步一下時間*/30 * * * * /usr/sbin/ntpdate 210.72.145.44

 

3、其他任務調度

cron預設配置了調度任務,分別為:hourly、daily、weekly、mouthly,預設設定檔為/etc/anacrontab

將需要執行的指令碼放到相應的目錄下即可,目錄分別為:

/etc/cron.hourly

/etc/cron.daily

/etc/cron.weekly

/ect/cron.mouthly

 

 

參考:

  [1] crontab.百度百科.http://baike.baidu.com/view/1229061.htm

  [2] 非主流空間.centos中crontab -e用法詳解.http://hi.baidu.com/ldbf/blog/item/b4dc9e02f23dcb124bfb51b8.html

  [3] 鳥哥的 Linux 私房菜.例行性工作排程 (crontab).http://linux.vbird.org/linux_basic/0430cron.php

  [4] DELL-Richard Li.Linux下cron調度的幾種實現方式比較.http://zh.community.dell.com/techcenter/f/21/t/1185.aspx

centos中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.