【Linux】crontab定时任务配置全过程
因為測試工作中需要在服務器上配置定時任務執行腳本,使用到了linux 的crontab。特此記錄一下配置的整個流程。
crontab命令用于設置周期性被執行的指令。該命令從標準輸入設備讀取指令,并將其存放于“crontab”文件中,以供之后讀取和執行。
1.檢查是否安裝了crontab,如果提示未安裝請自行安裝,crontab安裝包在系統光盤里面的pacekage文件夾crontabs安裝包。
rpm -qa | grep crontab
2.crontab服務啟動與關閉。
/etc/init.d/crond stop ? ? ? ? ? --關閉服務
/etc/init.d/crond start ? ? ? ? ?--啟動服務
/etc/init.d/crond restart ? ? ? ?--重啟服務
/etc/init.d/crond reload ? ? ? ? --重新載入配置
3.crontab在/etc目錄下面存在cron.hourly,cron.daily,cron.weekly,cron.monthly,cron.d五個目錄和crontab,cron.deny二個文件。
cron.daily 是每天執行一次的job
cron.weekly 是每個星期執行一次的job
cron.monthly 是每月執行一次的job
cron.hourly 是每個小時執行一次的job
cron.d 是系統自動定期需要做的任務
crontab 是設定定時任務執行文件
cron.deny 是用于控制不讓哪些用戶使用Crontab的功能的文件
4.用戶配置文件
每個用戶都有自己的cron配置文件,通過crontab -e 就可以編輯,一般情況下我們編輯好用戶的cron配置文件保存退出后,
系統會自動就存放于/var/spool/cron/目錄中,文件以用戶名命名。linux的cron服務是每隔一分鐘去讀取一次/var/spool/cron,/etc/crontab,/etc/cron.d下面所有的內容。
5.crontab文件格式
minute: 表示分鐘,可以是從0到59之間的任何整數。
hour:表示小時,可以是從0到23之間的任何整數。
day:表示日期,可以是從1到31之間的任何整數。
month:表示月份,可以是從1到12之間的任何整數。
week:表示星期幾,可以是從0到7之間的任何整數,這里的0或7代表星期日。
command:要執行的命令,可以是系統命令,也可以是自己編寫的腳本文件。
6.特殊字符:
星號(*):代表每的意思,例如month字段如果是星號,則表示每月都執行該命令操作。
逗號(,):表示分隔時段的意思,例如,“1,3,5,7,9”。
中杠(-):表示一個時間范圍,例如“2-6”表示“2,3,4,5,6”。
正斜線(/):可以用正斜線指定時間的間隔頻率,例如“0-23/2”表示每兩小時執行一次。同時正斜線可以和星號一起使用,例如*/10,如果用在minute字段,表示每十分鐘執行一次。
下面以一個實例來說明整個流程:
1.首先在/home/mstest目錄下面創建一個sh腳本test.sh,給test.sh腳本執行賦權chmod a+x test.sh;
2.然后運行crontab –e 編寫一條定時任務 */5 * * * * /home/mstest/test.sh,在每5分鐘執行一次test.sh腳本。?
3.可以 crontab -l 查詢當前用戶定時任務,或者 crontab -r ?刪除當前用戶所有定時任務 ?
4.5分鐘后查看任務執行情況
備注:新創建的cron job,不會馬上執行,至少要過2分鐘才執行。如果重啟cron則馬上執行。
具體實例
0 0 8 * * ? ? ? ? ? 每天8點執行一次
0 0/15 8-23 * * ? ? 每天8~23點、隔15分鐘執行一次
總結
以上是生活随笔為你收集整理的【Linux】crontab定时任务配置全过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 以串结构存储c语言版,数据结构C语言版
- 下一篇: 百度智能云文档汇总