Unix Linux中Cron的用法

2021-05-24 10:30:03 字數 2109 閱讀 4293

cron是unix或者linux下用來定時任務的命令,大致的用法如下:

1、服務的啟動和關閉

/sbin/service crond start   //啟動服務

/sbin/service crond stop    //關閉服務

/sbin/service crond restart //重啟服務

/sbin/service crond reload  //重新載入配置

也可以讓該服務在開機時自啟動:在/etc/rc.d/rc.local這個指令碼的末尾加上如下指令碼:

/sbin/service crond start

2、編輯cron服務

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

crontab -r //刪除沒個使用者的cron服務

crontab -e //編輯某個使用者的cron服務

用crontab -u user -e 進入vi編輯模式,編輯的內容一定要符合下面的格式:

* * * * * command

這個格式的前一部分是對時間的設定,後面一部分是要執行的命令,當然,這個命令也可以是乙個指令碼。五個 * 的作用如下:

分鐘 (0-59)

小時 (0-23)

日期 (1-31)

月份 (1-12)

星期 (0-6)//0代表星期天

每次編輯完某個使用者的cron設定後,cron自動在/var/spool/cron下生成乙個與此使用者同名的檔案,此使用者的cron資訊都記錄在這個檔案中,這個檔案是不可以直接編輯的,只可以用crontab -e 來編輯。cron啟動後每過乙份鐘讀一次這個檔案,檢查是否要執行裡面的命令。因此此檔案修改後不需要重新啟動cron服務。

3、定時方法說明

除了數字之外,還有幾個特殊的符號("*"、"/"和"-"、",")可以用來編輯啟動時間,*代表所有的取值範圍內的數字,"/"代表每的意思,"*/5"表示每5個單位,"-"代表從某個數字到某個數字,","分開幾個離散的數字。以下舉幾個例子說明問題:

每天早上6點:0 6 * * * command

每兩個小時:0 */2 * * * command

晚上11點到早上8點之間每兩個小時,早上八點:0 23-7/2,8 * * * command

每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點:0 11 4 * 1-3 command

1月1日早上4點:0 4 1 1 * command

4、配置檔案/etc/crontab的編輯

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內的指令碼

大家注意"run-parts"這個引數了,如果去掉這個引數的話,後面就可以寫要執行的某個指令碼名,而不是資料夾名了。

5、許可權設定

預設情況下,所有使用者都能訪問cron工具,要對cron進行訪問控制,則可以生成/etc/cron.allow與/etc/cron.deny檔案。

①、這兩個檔案都不存在時,每個使用者都可以訪問cron工具。

②、預設情況下,應該有cron.deny(空檔案),cron.allow需要自己建立。

③、存在/etc/cron.allow檔案時,則只有cron.allow檔案中允許的使用者才能訪問cron工具,如果也有/etc/cron.deny檔案,則忽略cron.deny檔案中的內容。

UNIX linux中的引號

unix中的引號分為三種 單引號,雙引號,反引號 單引號 用單引號括起來的字元作為普通字元,即使是特殊字元也不例外.雙引號 除了 和 這幾個字元仍是特殊字元保持其特殊效能以外,其他的字元全部作為普通字元.其中 是用其後指定的變數的值代替此變數和 是轉移字元,指出對其後的字元不做特殊處理.反引號 反引...

Unix Linux中的 dev fd機制

比較新的unix linux系統都提供名為 dev fd的目錄,其中有檔案0 1 2等檔案,開啟這些檔案,相當於複製這些檔案描述符 例如 fd open dev fd 0 mode 等價於fd dup 0 檔案描述符fd和0將共享乙個檔案表記錄項。我們再來做一些試驗 在debian下執行以下命令 c...

spring schedule中的cron表示式

cron表示式使用格式 seconds minutes hours dayofmonth month dayofweek year 秒分 時月中的某天 月週中的某天 年 可選 每個符號代表的含義 匹配該域的任意值 如 用在分所在的域,表示每分鐘都會觸發事件。匹配該域的任意值。月份的天河周的天互相衝突...