Linux crontab 自動定時執行命令學習

2021-06-04 13:56:24 字數 2575 閱讀 3256

crontab簡介

wiki:crontab命令常見於unix和類unix的作業系統之中,用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於「crontab」檔案中,以供之後讀取和執行。該詞**於希臘語 chronos(χρόνος),原意是時間。

通常,crontab儲存的指令被守護程序啟用,crond常常在後台執行,每一分鐘檢查是否有預定的作業需要執行。這類作業一般稱為cron jobs

crontab檔案包含送交cron守護程序的一系列作業和指令。每個使用者可以擁有自己的crontab檔案;同時,作業系統儲存乙個針對整個系統的crontab檔案,該檔案通常存放於/etc或者/etc之下的子目錄中,而這個檔案只能由系統管理員來修改。

crontab檔案的每一行均遵守特定的格式,由空格或tab分隔為數個領域,每個領域可以放置單一或多個數值。

命令列結構

crontab [-u user] [file]

用指定的file代替某個使用者目前的crontab檔案,如果沒有指定file,則接受標準輸入(鍵盤)上鍵入的命令,並將他們加入到crontab目錄下。

crontab [-u user] [-i] [-l | -e | -r]

-i 在刪除某個使用者crontab檔案時提示確認資訊(是/否)

-l 列出某個使用者的crontab檔案

-e 編輯某個使用者的crontab檔案

-r 刪除 某個使用者的crontab檔案

例子:

sudo crontab -u buzhidao -l

列印使用者buzhidao的crontab檔案

sudo crontab -u buzhidao -e

開啟並編輯使用者buzhidao的crontab檔案

sudo crontab -u buzhidao -i -r

提示你是否確認刪除某個使用者的crontab檔案

crontab檔案的內容命令格式

# 檔案格式說明

# ——分鐘 (0 - 59)

# | ——小時 (0 - 23)

# | | ——日 (1 - 31)

# | | | ——月 (1 - 12)

# | | | | ——星期 (0 - 7)(星期日=0或7)

# | | | | |

# * * * * * 被執行的命令(cmd)

注意:對於星期域,0和7都表示星期日,如果同時指定了日和星期,則如果其中任一條件滿足,執行指令即被執行

操作符號

對於crontab檔案的內容,每個 區域同時支援多個數值

1、用逗號『,』分開多個值,例如3月、5月、8月、9月可以表示為3,5,8,9

2、用連線符'-'指定值的範圍,例如1-6可以表示1,2,3,4,5,6

3、用*表示所有值,例如在小時域裡的*代表每乙個小時

例子:0 1 * * 0-6 /usr/local/nginx/sbin/nginx -s reload

每天的凌晨1點重啟nginx服務

0 */2 * * 0

/usr/local/nginx/sbin/nginx -s reload

週日每隔2小時重啟nginx服務

0 1 * * 0,5 /usr/local/nginx/sbin/nginx -s reload

每週的周

五、週日凌晨1點重啟nginx服務

0,30 1-3 1 * *

/usr/local/nginx/sbin/nginx -s reload

每月1日的凌晨1到3點,每隔30分鐘重啟nginx一次

0 23 8 5 *

/usr/local/nginx/sbin/nginx -s reload

5月8日的晚上23點重啟nginx服務

具體使用過程

下面以每隔10分鐘自動重啟nginx服務作為測試例子

系統:ubuntu11.10

#檢查crontab是否啟動

$service cron status

#列印root使用者的crontab檔案內容

$sudo crontab -u root -l

#開啟並編輯root使用者的crontab檔案

$sudo crontab -u root -e

#預設用vi開啟,加入以下命令 */10 * * * * /usr/local/nginx/sbin/nginx -s reload 儲存並退出

$sudo crontab -u root -l

然後#檢視nginx程序執行狀況

$ps -aux | grep nginx

通過輸出的nginx的啟動時間,可以看到我們設定的crontab命令已經起作用

光電自動定焦技術

光電自動定焦技術簡介 字型選擇 大 中小 光電自動定焦技術是根據已採集影象的清晰程度來調節鏡頭的位置,使得影象的清晰度達到最佳,從而達到定焦的目的。關鍵問題是確定可以正確反映影象清晰度的定焦值 focus value 定焦值最大時是最好的成像位置。常用的定焦值評價函式 空間域 計算量較小,速度快 聚...

selenium python自動化 元素定位法

一 元素定位原則 首選id,沒有id,選擇name,id,name都沒有,選擇class 遇到a標籤,才能使用link text 前幾種方式都不可以,考慮copy xpath id,name,class這三種元素定位比較簡單,在這裡不再介紹。1 link text定位元素 比如,下面這段a 就可以用...

centos系統crontab實現自動定時重啟教程

例如 設定每天凌晨5點重啟的方法 使用ssh工具成功登陸伺服器後,執行如下命令 crontab e 按insert鍵,進入編輯模式 然後在文件中輸入 0 5 sbin reboot 注意中間的空格,0 5表示每天凌晨四點重啟 以此類推 0 6表示凌晨6點.編輯好後按esc鍵退出編輯模式。鍵入 wq ...