LINUX 定時任務命令

mahe0207發表於2015-01-30

at命令:在指定時間內排程一次性的任務

at [-f script] [-mldv] [time] 

引數:

-m:作業完成後給使用者發郵件。

-l:列出當前所有等待執行的作業。atq 具相同的作用。

-d:取消一個at任務

-v:使用時間格式列出at任務

-c:列出任務內容

-f script:要提交的指令碼或命令

時間格式:

now + 時間 :時間以 minutes、hours、days、或 weeks 為單位 

HH:MM :24小時制度,如果時間已過,就會在第二天的這一時間執行 

midnight :表示00:00 

noon :表示12:00 

teatime :表示16:00

示例:

at 3:00pm tomorrow -f db_table.sh

at -f mycrontest.sh 2:00 next week

echo find /etc -name "passwd" -print | at now +1 minute

atrm [job no] 或at -r [job no]  清除作業


crontab:週期性定時任務

[minute:0~59] [hour:0~23] [day:1~31] [month:1~12] [week:0~707表示星期日] command

注:*所有  ,分隔符  -範圍  /頻率 

修改crontab檔案: crontab -e列出crontab檔案 crontab -l

刪除crontab檔案: crontab -r

恢復丟失的crontab檔案:  crontab 

建立一個新的crontab檔案:

1.修改.bash_profile,新增:EDITOR=vi; export EDITOR

2.建立 cron的檔案(例如:ora使用者的oracron檔案),新增如下:

    0,15,30,45 18-06 * * * /bin/echo 'date' > /dev/console

3.提交crontab檔案:crontab oracron

啟動關閉cron服務程式 service crond [start|stop|status]

加入開機啟動 chkconfig --level 235 crond on

系統任務排程配置檔案 /etc/crontab

使用者任務排程配置檔案  /var/spool/cron目錄下,檔名同使用者名稱

所列使用者不允許使用crontab命令 /etc/cron.deny

所列使用者允許使用crontab命令 /etc/cron.allow

示例

每晚的21:30執行/apps/bin目錄下的cleanup.sh:30 21* * * /apps/bin/cleanup.sh

每月1、10、22日的4:45執行/apps/bin目錄下的backup.sh:45 4 1,10,22 * * /apps/bin/backup.sh

每週六、週日的1:10執行一個find命令:10 1 * * 6,0 /bin/find -name "core" -exec rm {} \;

每天18:00至23:00之間每隔30分鐘執行/apps/bin目錄下的dbcheck.sh:0,30 18-23 * * * /apps/bin/dbcheck.sh

每星期六的11:00pm執行/apps/bin目錄下的qtrend.sh:0 23 * * 6 /apps/bin/qtrend.sh

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29437301/viewspace-1420636/,如需轉載,請註明出處,否則將追究法律責任。

相關文章