linux的cron


linux系統由cron(crond)這個系統服務來控制的,linux系統上原來有非常多的計划性工作,因此,這個系統服務是默認啟動的。
cron進程每分鍾會定期檢查是否有要執行的任務,如果有就自動執行該任務。
/etc/crontab
參考博客:https://www.cnblogs.com/intval/p/5763929.html
用戶編寫的任務,存放在/var/spool/cron/[user]中
minute hour day month week command
$ crontab -e            # 進行編輯
$ crontab -l            # 顯示當前任務的詳細就是/var/spool/cron/[user]文件中的內容
$ crontab -r            # 從/var/spool/cron/中刪除用戶的crontab文件
$ service crond start   # 啟動
$ service crond stop    # 停止
$ service crond restart # 重啟
$ service crond reload  # 重新加載
$ service crond status  # 狀態

在ubuntu中,服務不是crond而是cron,使用crontab -e修改了內容,不需要重啟之類的,會自動生效
需要注意的是環境變量和加載文件的問題,
比如我想每分鍾記錄一下當前時間到一個文件:
方式一:使用crontab -e進行修改如下,不會記錄出來,應該是跟bash的加載方式有關,另一篇文章可能對這個有啟發:https://www.cnblogs.com/TheoryDance/p/10325493.html
*/1 * * * * echo `date +"%Y-%m-%d %H:%M:%S"` >> /home/master/environment/run_records.log
方式二:可行
*/1 * * * * sh /home/master/environment/record.sh
record.sh內容
#!/bin/bash
echo `date +"%Y-%m-%d %H:%M:%S"` >> /home/master/environment/run_records.log

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM