crontab簡介
crontab 命令常見於 unix 和類 unix 的作業系統之中(linux 就屬於類 unix 作業系統),用於設定週期性被執行的指令。該命令從輸入裝置讀取指令,並將其存放於 crontab 檔案中,以供之後讀取和執行。通常,crontab 儲存的指令被守護程序啟用,crond 為其守護程序,crond 常常在後台執行,每一分鐘會檢查一次是否有預定的作業需要執行。
通過 crontab 命令,我們可以在固定的間隔時間執行指定的系統指令或 shell script 指令碼。時間間隔的單位可以是分鐘、小時、日、月、周的任意組合。
這裡我們看一看crontab 的格式
# example of job definition:
# .---------------- 第乙個引數填寫分鐘 (0 - 59),填寫 * 則表示每分鐘執行,填寫1-5,則表示從第1分鐘到第5分鐘都執行,填 */n 時,表示每 n 分鐘個時間間隔執行一次,填a,b時,則表示第a分鐘和第b分鐘都執行,其他引數的規則以此類推;
# | .-------------第二個引數表示小時(0 - 23);
# | | .---------- 第三個引數表示具體日期(1 - 31);
# | | | .------- 第三個引數表示月份 (1 - 12);
# | | | | .---- 第四個引數表示星期幾 (0 - 6);
# | | | | | ---- 最後面加上 要執行的命令
# * * * * * user-name command to beexecuted
例子:×/1 * * * * touch /home/$(date +\%y\%m\%d\%h\%m\%s) 每隔1分鐘生成乙個以當前時間命名的檔案
0 3 * * * service tomcat restart 每天凌晨三點重啟tomcat服務
0 2 1 * * * /home/backup_mysql.sh 每月1號的凌晨2點執行mysql資料庫備份指令碼
crontab [ -u user ] file
crontab [ -u user ]
-e : 建立的crontab檔案,編寫具體的任務計畫
-r : 刪除當前所有的任務計畫
-l : 列出當前所有的任務計畫
每個使用者使用crontab -e
新增計畫任務,都會在/var/spool/cron/crontabs
中新增乙個該使用者自己的任務文件,這樣目的是為了隔離;
如果是系統級別的定時任務,應該如何處理?只需要以 sudo 許可權編輯/etc/crontab
檔案就可以。
cron 服務監測時間最小單位是分鐘,所以 cron 會每分鐘去讀取一次 /etc/crontab 與 /var/spool/cron/crontabs 裡面的內容。
/etc/cron.daily,目錄下的指令碼會每天執行一次,在每天的6點25分時執行;
/etc/cron.hourly,目錄下的指令碼會每個小時執行一次,在每小時的17分鐘時執行;
/etc/cron.monthly,目錄下的指令碼會每月執行一次,在每月1號的6點52分時執行;
/etc/cron.weekly,目錄下的指令碼會每週執行一次,在每週第七天的6點47分時執行;
系統預設執行時間可以根據需求進行修改。
Linux linux定時任務crontab
crontab命令的功能是在一定的時間間隔排程一些命令的執行。它的配置檔案是 etc crontab。vim etc crontab etc crontab中每行指定乙個定時任務,其描述格式如下 minute hour daymonth dayofweek commandminute 從0到59的整...
Linux任務計畫
at任務 單次定時執行任務 at命令 at option time u常用選項 v 顯示版本資訊 l 列出指定佇列中等待執行的作業 相當於 atq d 刪除指定的作業 相當於 atrm c 檢視具體作業任務 f path from somefile 從指定的檔案中讀取任務 m 當任務被完成之後,將給...
LINUX 任務計畫
任務計畫就是任務迴圈計畫,不用刪除就可以了 crontab 如果有很多執行命令,將這些執行命令放到乙個指令碼裡面按照順序執行 1.crontab 任務執行 19 10 sbin init 6 每天10點19分重啟 分時日月周 2.crontab r 全部刪除任務計畫 3.crontab l 檢視執行...