crontab命令的功能是在一定的時間間隔排程一些命令的執行。它的配置檔案是/etc/crontab。
vim /etc/crontab
/etc/crontab中每行指定乙個定時任務,其描述格式如下:
minute
hour
daymonth dayofweek command
minute - 從0到59的整數
hour - 從0到23的整數
day - 從1到31的整數 (必須是指定月份的有效日期)
month - 從1到12的整數 (或如jan或feb簡寫的月份)
dayofweek - 從0到7的整數,0或7用來描述週日 (或用sun或mon簡寫來表示)
command - 需要執行的命令(可用as ls /proc >> /tmp/proc或 執行自定義指令碼的命令)
root表示以root使用者身份來執行
run-parts表示後面跟著的是乙個資料夾,要執行的是該資料夾下的所有指令碼
對於以上各語句,星號(*)表示所有可用的值。例如*在指代month時表示每月執行(需要符合其他限制條件)該命令。
整數間的連字型大小(-)表示整數列,例如1-4意思是整數1,2,3,4
指定數值由逗號分開。如:3,4,6,8表示這四個指定整數。
符號「/」指定步進設定。「/」表示步進值。如0-59/2定義每兩分鐘執行一次。步進值也可用星號表示。如*/3用來執行每三個月份執行指定任務。
以「#」開頭的為注釋行,不會被執行。
如果乙個cron任務需要定期而不是按小時,天,周,月來執行,則需要新增/etc/cron.d目錄。這個目錄下的所有檔案和檔案/etc/crontab語法相同,檢視樣例:
30 3 * * mon cat /proc/meminfo >> /tmp/meminfo
10 4 1 * * /root/scrīpts/backup.sh
除了root使用者之外的使用者可以執行crontab配置計畫任務。所有使用者定義的crontab儲存在目錄/var/spool/cron下,任務會以建立者的身份被執行。要以特定使用者建立乙個crontab,先以該使用者登入,執行命令crontab -e,系統會啟動在visual或者editor中指定的的編輯軟體編輯crontab。檔案內容與/etc/crontab格式相同。示例如下:
0 3 * * * /home/dbbackup/db1backup.sh backup
0 4 * * * /home/dbbackup/db2backup.sh backup
表示每天3點執行/home/dbbackup/db1backup.sh backup,4點執行/home/dbbackup/db2backup.sh backup,如果是每五分鐘執行一次可改為:
/5 * * * /home/dbbackup/db2backup.sh backup
當更改的crontab需要儲存時,檔案會儲存在成如下檔案/var/spool/cron/username。檔名會根據使用者名稱而不同。
四.crontab服務的啟動關閉
sbin/service crond start //啟動服務
/sbin/service crond stop //關閉服務
/sbin/service crond restart //重啟服務
/sbin/service crond reload //重新載入配置
linux linux上設定定時任務
由於linux上部署了比較多docker服務,在部署服務的過程中,會生成很多tag為none的映象。需要做的就是,定時清理這些tag為none的映象,為伺服器減少占用空間。過程也很簡單。第一步 在某個資料夾下,新建sh 檔案 內容是 刪除tag為none的映象 bin bash docker rmi...
linux定時任務 at定時任務
at命令是一次性定時計畫任務,at的守護程序atd會以後臺模式執行,檢查作業佇列來執行作業。atd守護程序會檢查系統上的乙個特殊目錄來獲取at命令的提交的作業,預設情況下,atd守護程序每60秒檢查一次目錄,有作業時,會檢查作業執行時間,如果時間與當前時間匹配,則執行此作業。注意 at命令是一次性定...
at定時任務
at的守護程序每60秒檢查一次作業佇列,有作業時檢查作業,時間恰好達到,則執行作業。前提 保證atd程序已經啟動,檢查atd程序是否啟動 ps ef grep atd。atd的命令格式 at 選項 時間 ctrl d 結束at命令的輸入。選項 m 任務完成後給使用者傳送郵件,沒有標準輸出。i atg...