Crontab定時任務

2022-04-08 15:53:38 字數 2764 閱讀 2412

*/2 * * * * /bin/sh /home/admin/jiaoben/buy/deletefile.sh

*/2 * * * *     通過這段字段可以設定什麼時候執行指令碼;

/bin/sh     bin/sh 是指執行指令碼的命令; 

/home/admin/jiaoben/buy/deletefile.sh     指指令碼存放的路徑;

crontab -u     //設定某個使用者的cron服務,一般root使用者在執行這個命令的時候需要此引數; 

crontab -l     //列出某個使用者cron服務的詳細內容;

crontab -r     //刪除沒個使用者的cron服務,crontab -u fred -r,不接引數的話代表刪除所有;

crontab -e     //編輯某個使用者的cron服務,比如說root檢視自己的cron設定:crontab -u root -l;

-u        指定乙個使用者

-l        列出某個使用者的任務計畫

-r        刪除某個使用者的任務

-e         編輯某個使用者的任務

分         小時          日            月         星期                命令

*    *    *    *    *     command

0-59      0-23        1-31      1-12           0-6               command     (取值範圍,0表示週日一般一行對應乙個任務)

「*」      代表取值範圍內的數字,

「/」      代表」每」,

「-」      代表從某個數字到某個數字,

「,」      分開幾個離散的數字

舉例如下:

5    *    *    *    *    ls        ------指定每小時的第5分鐘執行一次ls命令

30   5    *    *    *    ls      ------指定每天的 5:30 執行ls命令

30    7     8    *     *     ls      ------指定每月8號的7:30分執行ls命令

30    5     8    6     *     ls     ------指定每年的6月8日5:30執行ls命令

30    6     *    *     0     ls      ------指定每星期日的6:30執行ls命令[注:0表示星期天,1表示星期1,以此類推,也可以用英文來表示,sun表示星期天,mon表示星期一等。

30     3   10,20   *    *     ls     ------每月10號及20號的3:30執行ls命令[注:「,」用來連線多個不連續的時段]

25    8-11   *     *    *     ls    ------每天8-11點的第25分鐘執行ls命令[注:「-」用來連線連續的時段]

*/15   *     *     *    *     ls      ------每15分鐘執行一次ls命令 [即每個小時的第0 15 30 45 60分鐘執行ls命令 ]

30    6    */10   *    *     ls      ------每個月中,每隔10天6:30執行一次ls命令[即每月的1、11、21、31日是的6:30執行一次ls 命令。 ]

每天7:50以root 身份執行/etc/cron.daily目錄中的所有可執行檔案

50   7     *      *    *    root    run-parts   /etc/cron.daily       [ 注:run-parts引數表示,執行後面目錄中的所有可執行檔案。 ]

新增排程任務可用兩種方法:

1)、在命令列輸入: crontab -e 然後新增相應的任務,wq存檔退出。

crontab -l             //列出當前的所有排程任務

crontab -l -u root         //列出使用者jp的所有排程任務

例1:每天5:30執行ls命令,並把結果輸出到/jp/test檔案中

30  5  *  *  *   ls >/jp/test 2>&1    注:2>&1 表示執行結果及錯誤資訊,不儲存命令執行的資訊;

shell=/bin/bash 

path=/sbin:/bin:/usr/sbin:/usr/bin

mailto=root               //如果出現錯誤,或者有資料輸出,資料作為郵件發給這個帳號 

home=/                 //使用者執行的路徑,這裡是根目錄 

# run-parts 

01   *   *   *   *   root run-parts /etc/cron.hourly      ------每小時執行/etc/cron.hourly內的指令碼 

02   4   *   *   *   root run-parts /etc/cron.daily        ------每天執行/etc/cron.daily內的指令碼 

22   4   *   *   0   root run-parts /etc/cron.weekly          ------每星期執行 /etc/cron.weekly內的指令碼

42   4   1   *   *    root run-parts /etc/cron.monthly       ------每月去執行/etc/cron.monthly內的指令碼

11   2   21   10   *   rm -rf   /mnt/fb 

crontab定時任務

今天工作項有個任務是讓ubuntu定時執行某個指令碼,對postgresql資料庫進行定時備份。linux 系統都有個cron定時任務的機制。今天做些筆記,以便日後翻查。注意 cron機制是有個使用者系統的概念的,即分系統cron和使用者cron,每個使用者所執行的cron任務可能不同。1.以roo...

crontab定時任務

基本格式 command 分 時 日 月 周 命令 第1列表示分鐘1 59 每分鐘用 或者 1表示 第2列表示小時1 23 0表示0點 第3列表示日期1 31 第4列表示月份1 12 第5列標識號星期0 6 0表示星期天 第6列要執行的命令 我的需求是定時備份mongodb 編寫任務執行的指令碼ba...

Crontab定時任務

我們可以使用crontab執行一些週期任務 crontab u user file crontab u user 將file做為crontab的任務列表檔案並載入crontab 編輯crontab檔案內容 顯示crontab檔案內容 刪除載入後的crontab檔案內容 每分鐘向使用者目錄下的log....