crond定時操作 crontab
* * * * * 分別表示 分鐘 小時 日 月 星期(0-6)
30 17,28,19 * * * 或 30 17-19 * * * 在每天的17-19小時半點時刻執行
30 8-18/2 * * * 這是指 在每天的8-18點每2小時的30分時刻執行
重啟使用 /etc/init.d/restart
每分鐘列印自己的名字到一個檔案裡
*/1 * * * * echo "peak" >> /var/aaa.txt 2>&1
每週六,日,上午9:00和下午14:00來外面玩
00 09,14 * * 6,0 /bin/sh/ /var/aaa.sh > /dev/null 2>&1
特別說明
/dev/null 2>&1 意思是說將上面指令碼的輸出重定向到/dev/null(黑洞裝置或者是空裝置),就是不記錄任何輸出,也不給系統發郵件
2&1 是指標準錯誤和標準輸出
如果報錯 no space left on device故障
首先df -k檢視 空間
解決辦法
cd /var/spool && rm -rf clientmqueue
mkdir clientmqueue && chmod 770 clientmqueue && chown smmsp.smmsp -R /var/sppl/clientmqueue
原因是定時任務輸出的內容的鍋,直接/dev/null 2&1
建立定時任務之前先檢查服務是否啟動
ps -ef|grep crond|grep -v grep
crontab -e 進入命令編輯模式
任務一:每隔一分鐘,列印一個+號到aaa.log
*/1 * * * * echo + >> /aaa.log 儲存
然後檢視
crontab -l
或者可以直接這樣寫
echo '*/1 * * * * echo + >> /aaa.log' >> /var/spool/crond
利用指令碼執行
*/1 * * * * /bin/sh /var/echo.sh >>/dev/null 2>&1
vi echo.sh
echo date >>/tmp/aaa.log