crontab的用法---linux定时任务

转自:http://www.cnitblog.com/applezk/archive/2007/10/18/35057.aspx

Step 1: 
    使用命令crontab -e编辑一个定时执行的任务或在/var/spool/cron/crontabs目录下新建一个与自己用户名相同的任务.
    即:
    #每隔一分钟执行一次后台程序tmpmail
    * * * * * /home/milch/tmpmail

     顺便提一下crontab中的命令格式:
     第一个 * 表示分钟 (0-59),
     第二个 * 表示小时 (0-23),
     第三个 * 表示月份中的某一天 (1-31),
     第四个 * 表示一年中的某一月 (1-12),
     第五个 * 表示一周中的星期几 (0-6 with 0=Sunday).

Step 2: 
     停止cron进程,并重启,
     命令:/etc/init.d/cron stop
     /etc/init.d/cron start

-------------------------------------------------------------------------
指令語法
crontab [ -u user ] file 
crontab [ -u user ] { -l | -r | -e }

指令說明
crontab 提供我們在固定的間隔時間執行自訂的程式、系統指令或 shell secrip。時間間隔的單位可以是分鐘、小時、日、週、月及以上的任意組合。允許使用者離線執行,並且可以將執行結果以 email 通知使用者。因此,非常設合對週期性的管理分析或資料備份等工作。

基本上,crontab 的指令格式分為六個部分,前五個為時間間隔,最後則是執行的指令。每一個部分用空格來區隔。

分 -- 0-59 
時 -- 0-23 
日 -- 1-31 
月 -- 1-12 或使用英文名稱 
星期 -- 0-7 或使用英文名稱 
工作命令 -- 指令,shell script,程式....(建議使用絕對路徑) 
以上是 crontab 的基本格式。

選項說明

-u user 
以指定的使用者身份,執行 crontab 工作。此選項僅供 root 使用。

-l 
顯示使用者現行的 crontab 檔。 

-r 
移除現行的 crontab 檔。 

-e 
進入 vi 編輯 crontab 檔(如有設定 VISUAL 或 EDITOR 環境變數,怎使用該環境變數所設定的編輯器來編輯)。在使用者退出編輯器後,會自動將所編輯 crontab 檔,置入 crontab 執行。 
相關檔案

/etc/cron.allow
/etc/cron.deny 

實例說明
# crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.3672 installed on Thu Jan 1 15:55:18 2004)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
0 0-23/6 * * * /usr/bin/webalizer
30 3 * * * /root/fbin/bak-web


先前曾提到,crontab 的格式分成六個部分,前五個是時間參數。在上例中你會發現除了數字與英文名稱,有使用到符號"*",這個符號代表每一單位的意思,譬如 30 3 * * * 既代表 30分 3點 每日 每月 星期的每天。

時間的指定,可以是單一的數字,或幾個數字用逗號來連接。看下例

30 3,12 * * * /root/fbin/bak-web 
其中的第二項為 3,12,這代表 3 以及 12 小時的意思。再來看下例

30 */6 * * * /root/fbin/bak-web 
我把第二項改成 */6 這代表每 6 小時,也相當於 6,12,18,24 的作用。此外還有一個區段的做法

30 8-18/2 * * * /root/fbin/bak-web 
我把第二項改成 8-18/2 這代表在 8 小時到 18 小時之間每 2 小時,也相當於 8,10,12,14,16,18 的作用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值