1.2、crontab的常用命令
crontab [-u username] //省略用戶表表示操作當(dāng)前用戶的crontabcrontab [-u username] -e //編輯工作表 )crontab [-u username] -l //列出工作表里的命令 )crontab [-u username] -r //刪除工作作 )
1.3、編寫規(guī)范
1、相關(guān)每個位置的參數(shù)如下圖,另外還有備注詳情
備注:
1) * 表示任意的(分、時、日、月、周)時間都執(zhí)行
2) – 表示一個時間范圍段, 如5-7點
3) , 表示分隔時段, 如6,0,4表示周六、日、四
4) /1 表示每隔n單位時間, 如*/10 每10分鐘
2、設(shè)置定時任務(wù)
2.1、全局設(shè)置定時任務(wù) crontab —任務(wù)是鏈接、curl或者寫入文件時
(1)執(zhí)行命令 crontab -e
(2)寫入定時任務(wù)
如果定時跑的任務(wù)是鏈接
*/1 * * * * /usr/local/curl(你自己的curl路徑) www.baidu.com >/dev/null 2>$1
如果需要內(nèi)容寫入文件中
*/1 * * * * echo "hello" >> abc.log
另外我還要普及下幾點
標(biāo)準(zhǔn)輸入0 從鍵盤獲得輸入 /proc/self/fd/0標(biāo)準(zhǔn)輸出1 輸出到屏幕(即控制臺) /proc/self/fd/1錯誤輸出2 輸出到屏幕(即控制臺) /proc/self/fd/2/dev/null 代表linux的空設(shè)備文件,所有往這個文件里面寫入的內(nèi)容都會丟失,俗稱“黑洞”>/dev/null 意思就是把錯誤輸出到“黑洞”>/dev/null 2>&1 默認(rèn)情況是1,也就是等同于 1>/dev/null 2>&1 。意思就是把標(biāo)準(zhǔn)輸出重定向到“黑洞”,還把錯誤輸出2重定向到標(biāo)準(zhǔn)輸出1,也就是標(biāo)準(zhǔn)輸出和錯誤輸出都進(jìn)了“黑洞”2>&1 >/dev/null 意思就是把錯誤輸出2重定向到標(biāo)準(zhǔn)出書1,也就是屏幕,標(biāo)準(zhǔn)輸出進(jìn)了“黑洞”,也就是標(biāo)準(zhǔn)輸出進(jìn)了黑洞,錯誤輸出打印到屏幕關(guān)于這里”&”的作用,我們可以這么理解2>/dev/null重定向到文件,那么2>&1,這里如果去掉了&就是把錯誤輸出給了文件1了,用了&是表明1是標(biāo)準(zhǔn)輸出。
(3)保存定時任務(wù)
按 i 進(jìn)行插入操作,寫入定時任務(wù)按 Esc 退出并輸入 :wq ,再按 Ctrl C即可保存成功。
2.2、.sh 方法實現(xiàn)
(1)創(chuàng)建Shell腳本
在項目中創(chuàng)建一個以 .sh 后綴的文件在該目錄下給這個shell文件添加足夠的權(quán)限
chmod -R 777 你創(chuàng)建文件名
(2)將Shell腳本寫入定時任務(wù)中
將對應(yīng)的shell文件寫入定時任務(wù)
*/1 * * * * 你的.sh得文件絕對路徑 >/dev/null 2>$1
將對應(yīng)的shell文件執(zhí)行定時任務(wù)時寫入日志
*/1 * * * * 你的.sh得文件絕對路徑>> a.log >/dev/null 2>$1
(3)重啟crond
service crond restart
(4)查看是否寫入項目中
crontab -l
看完上述內(nèi)容,是不是對linux定時任務(wù)的使用方法有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注資訊頻道。
更多關(guān)于云服務(wù)器,域名注冊,虛擬主機的問題,請訪問西部數(shù)碼官網(wǎng):ps-sw.cn