crontab命令和格式學習

2021-08-17 19:13:03 字數 1556 閱讀 9355

cron的格式很混亂,一些格式容易懵,特此整理一下,

cron可以讓系統在指定的時間,去執行某個指定的工作,我們可以使用crontab指令來管理cron機制

crontab引數

-u:這個引數可以讓我們去編輯其他人的crontab,如果沒有加上這個引數的話就會開啟自己的crontab

crontab -u 使用者名稱  

※必須是超級使用者管理員才能使用,普通使用者沒有許可權,直接使用crontab -e

-l:可以列出crontab的內容

-r:可以移除crontab

-e:可以使用系統預設的編輯器,開啟crontab

-i:可以移除crontab,會跳出系統資訊讓你再次確定是否移除crontab

crontab時間格式說明

minute(分)可以設定0-59分

hour(小時)可以設定0-23小時

day of month(日期)可以設定1-31號

month(月份):可以設定1-12月

day of week(星期):可以設定0-7星期幾,其中0和7都代表星期天,或者我們也可以使用名稱來表示星期天到星期一,例如sun表示星期天,mon表示星期一等等

crontab時間格式範例

1-3表示123

1-9/2表示13579

crontab範例

每五分鐘執行  */5 * * * *

每小時執行    0 * * * *

每天執行      0 0 * * *

每週執行      0 0 * * 0

每月執行 0 0 1 * *  

※ 每月1號執行一次

每年執行    0 0 1 1 *

設定cron的許可權

/etc/cron.allow

/etc/cron.deny

系統首先判斷是否有cron.allow這個檔案,如果有這個檔案的話,系統會判斷這個使用者有沒有在cron.allow的名單裡面,如果在名單裡面的話,就可以使用cron機制。如果這個使用者沒有在cron.allow名單裡面的話,就不能使用cron機制。

如果系統裡面沒有cron.allow這個檔案的話,系統會再判斷是否有cron.deny這個檔案,如果有cron.deny這個檔案的話,就會判斷這個使用者有沒有在cron.deny這個名單裡面,如果這個使用者在cron.deny名單裡面的話,將不能使用cron機制。如果這個使用者沒有在cron.deny這個名單裡面的話就可以使用cron機制。

如果系統裡這兩個檔案都沒有的話,就可以使用cron機制

介紹crontab檔案

/etc/crontab

在這個檔案裡並沒有記錄系統要執行哪些工作,而是記錄了下面四個子目錄。

/etc/cron.hourly

/etc/cron.daily

/etc/cron.weekly

/etc/cron.monthly

這些子目錄裡存放了一些指令碼,到了crontab所指定的時間點,系統就會去執行這些子目錄裡的指令碼。

crontab命令格式

crontab命令格式 m h d m d cmd 分 時 日 月 周 命令 m 分鐘 0 59 h 小時 0 23 d 天 1 31 m 月 1 12 d 一星期內的天 0 6,0為星期天 第1列表示分鐘1 59 每分鐘用 或者 1表示 第2列表示小時1 23 0表示0點 第3列表示日期1 31 ...

Crontab命令格式

第1列分鐘1 59 第2列小時1 23 0表示子夜 第3列日1 31 第4列月1 12 第5列星期0 6 0表示星期天 第6列要執行的命令 下面是crontab的格式 分 時 日 月 星期 要執行的命令 這裡有crontab檔案條目的一些例子 每晚的21 30重啟apache 30 21 usr l...

crontab命令格式說明

使用者所建立的crontab檔案中,每一行都代表一項任務,每行的每個字段代表一項設定,它的格式共分為六個字段,前五段是時間設定段,第六段是要執行的命令段,格式如下 minute hour day month week command 其中 minute 表示分鐘,可以是從0到59之間的任何整數。ho...