【Linux】使用crontab,讓linux定時執行shell腳本

閱讀目錄shell

  • 1. cron服務【Ubuntu環境】
  • 2. crontab用法
  • 3. vim編輯crontab文件
  • 4.Cron各項描述
  • 5.例子解釋

Linux中,週期執行的任務通常由cron這個守護進程來處理。cron讀取一個或多個配置文件,這些配置文件中包含了命令行及其調用時間。cron的配置文件稱爲「crontab」,是「cron table」的簡寫。vim

1. cron服務【Ubuntu環境】

查看cron狀態ui

sudo  service cron status

開啓cronspa

sudo /etc/init.d/cron start

關閉cron命令行

sudo /etc/init.d/cron stop

重啓cronrest

sudo /etc/init.d/cron restart

2. crontab用法

crontab –e : 修改 crontab 文件,若是文件不存在會自動建立。  (這樣能夠編輯模式打開我的的crontab配置文件,而後加入一下這行:0 0 * * * /home/linrui/XXXXXXXX.sh日誌

這將會在天天凌晨運行 指定的.sh文件blog

crontab –l : 顯示 crontab 文件。 
crontab -r : 刪除 crontab 文件。
crontab -ir : 刪除 crontab 文件前提醒用戶。
進程

 在crontab文件中寫入須要執行的命令和時間,該文件中每行都包括六個域,其中前五個域是指定命令被執行的時間,最後一個域是要被執行的命令。每一個域之間使用空格或者製表符分隔。格式以下:crontab

minute hour day-of-month month-of-year day-of-week commands

合法值爲:00-59 00-23 01-31 01-12 0-6 (0 is sunday) 

除了數字還有幾個特殊的符號:"*"、"/"和"-"、","

  • *表明全部的取值範圍內的數字
  • "/"表明每的意思,"/5"表示每5個單位
  • "-"表明從某個數字到某個數字
  • ","分開幾個離散的數字

:commands 注意如下幾點

  • 要是存在文件,要寫絕對路徑
  • 即便是打印也不會顯示在顯示屏,在後臺運行,最好重定向日誌

3. 使用vim編輯crontab文件

EDITOR=vi
export EDITOR
crontab -e

4. Cron 各項的描述

如下是 crontab 文件的格式:

{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} 
o minute: 區間爲 0 – 59 
o hour: 區間爲0 – 23 
o day-of-month: 區間爲0 – 31 
o month: 區間爲1 – 12. 1 是1月. 12是12月. 
o Day-of-week: 區間爲0 – 7. 週日能夠是0或7.

5. 例子解釋

1 0 * * * /home/lenovosh/work/bianyi.sh lumus nedp

在天天凌晨00:01運行 指定的bianyi.sh腳本文件

59 23 * * 1,2,3,4,5 /home/lenovosh/work/bianyi.sh lumus nedp

在每一個工做日23:59運行 指定的bianyi.sh腳本文件,或者以下寫法

59 23 * * 1-5 /home/lenovosh/work/bianyi.sh lumus nedp

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

*/1 * * * * /home/lenovosh/work/bianyi.sh lumus nedp

每分鐘運行 指定的bianyi.sh腳本文件

10 14 1 * * /home/lenovosh/work/bianyi.sh lumus nedp

每月的1號14:10運行 指定的bianyi.sh腳本文件

1 0 * * 1,3,5 /home/lenovosh/work/bianyi.sh lumus nedp

每週1、3、五凌晨00:01運行 指定的bianyi.sh腳本文件

具體想看bianyi.sh(編譯腳本)怎麼實現,請看下一篇博客!

相關文章
相關標籤/搜索