溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux系統(tǒng)crontab命令的使用

發(fā)布時(shí)間:2020-05-27 15:30:21 來(lái)源:億速云 閱讀:286 作者:鴿子 欄目:系統(tǒng)運(yùn)維

1.格式寫(xiě)法

Linux系統(tǒng)crontab命令的使用
常用命令
crontab -e #打開(kāi)編輯計(jì)劃任務(wù),和用vim工具一樣
crontab -l #查看計(jì)劃任務(wù)

2.實(shí)例

每月每天每小時(shí)的第 0 分鐘執(zhí)行一次 /bin/ls

0 * * * * /bin/ls
在 12 月內(nèi), 每天的早上 6 點(diǎn)到 12 點(diǎn),每隔 3 個(gè)小時(shí) 0 分鐘執(zhí)行一次 /usr/bin/backup

0 6-12/3 * 12 * /usr/bin/backup
周一到周五每天下午 5:00 寄一封信給 alex@domain.name

0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata
每月每天的午夜 0 點(diǎn) 20 分, 2 點(diǎn) 20 分, 4 點(diǎn) 20 分....執(zhí)行 echo "haha"

20 0-23/2 * * * echo "haha"

下面再看看幾個(gè)具體的例子:

0 */2 * * * /sbin/service httpd restart  意思是每?jī)蓚€(gè)小時(shí)重啟一次apache 

50 7 * * * /sbin/service sshd start  意思是每天7:50開(kāi)啟ssh服務(wù) 

50 22 * * * /sbin/service sshd stop  意思是每天22:50關(guān)閉ssh服務(wù) 

0 0 1,15 * * fsck /home  每月1號(hào)和15號(hào)檢查/home 磁盤 

1 * * * * /home/bruce/backup  每小時(shí)的第一分執(zhí)行 /home/bruce/backup這個(gè)文件 

00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \;  每周一至周五3點(diǎn)鐘,在目錄/home中,查找文件名為*.xxx的文件,并刪除4天前的文件。

30 6 */10 * * ls  意思是每月的1、11、21、31日是的6:30執(zhí)行一次ls命令

運(yùn)行腳本實(shí)例
Linux系統(tǒng)crontab命令的使用
#表示每1分鐘運(yùn)行一次腳本,注意腳本路徑寫(xiě)決定路徑且要給腳本X 運(yùn)行權(quán)限,

/dev/null  表示把腳本所產(chǎn)生的輸出無(wú)論是標(biāo)準(zhǔn)的還是錯(cuò)誤的全部送給 null 設(shè)備,不看
& 最后帶個(gè) & 表示后臺(tái)運(yùn)行,寫(xiě)開(kāi)機(jī)自啟腳本時(shí)候建議 加 &

3.查看日志

tail -f /var/log/cron  #監(jiān)控日志 "/var/log/cron" 是crontab的日志路徑
Linux系統(tǒng)crontab命令的使用
#從日志里能看出,每分鐘的第一秒,該腳本都會(huì)被執(zhí)行一次。

4.   2>&1 幾個(gè)基本符號(hào)及其含義

/dev/null 表示空設(shè)備文件
0 表示stdin標(biāo)準(zhǔn)輸入
1 表示stdout標(biāo)準(zhǔn)輸出
2 表示stderr標(biāo)準(zhǔn)錯(cuò)誤
對(duì)于2>&1的理解,2就是標(biāo)準(zhǔn)錯(cuò)誤,1是標(biāo)準(zhǔn)輸出,那么這條命令不就是相當(dāng)于把標(biāo)準(zhǔn)錯(cuò)誤重定向到標(biāo)準(zhǔn)輸出

案例1,重定向錯(cuò)誤輸出到文件里
Linux系統(tǒng)crontab命令的使用

案例2 標(biāo)準(zhǔn)錯(cuò)誤輸出都重定向到文件
Linux系統(tǒng)crontab命令的使用

案例3 錯(cuò)誤輸出重定向到標(biāo)準(zhǔn)輸出
Linux系統(tǒng)crontab命令的使用
#nginx -V 是錯(cuò)誤輸出,而grep 是不處理 錯(cuò)誤輸出的,這樣我們找模塊就比較麻煩了

Linux系統(tǒng)crontab命令的使用
#我把語(yǔ)句改了一下 把錯(cuò)誤輸出都輸出到標(biāo)準(zhǔn)里,這樣grep 就能處理了

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI