Linux添加crontab定時任務
由于公司古董項目,不知原因引發了,容器得每次重新開機才能正常使用。由于工作進度的原因沒辦法對老項目進行構架重構。就采取了這個定時任務的方式解決辦法。
首先根據網頁提供資料,crontab分為兩類,系統crontab,使用者crontab。
系統crontab可以使不同的使用者crontab任務都放到/etc/crontab檔案中指定。而使用者crontab僅允許目前使用者調用crontab -e指令來編輯自己的任務。
crontab具體使用以及文法:
crontab的一些基本指令
systemctl start crond.service 啟動服務
systemctl stop crond.service 停止服務
systemctl restart crond.service 重新開機服務
systemctl reload crond.service 重載配置檔案
systemctl status crond.service 檢視狀态
crontab -l 顯示crontab檔案(顯示已設定的定時任務)
crontab -e 編輯crontab檔案(編輯定時任務)
crontab -r 删除crontab檔案(删除定時任務)
crontab -ir 删除crontab檔案提醒使用者(删除定時任務)
接下來進入正題使用定時器重新開機容器,無需人工操作:
首先編寫腳本檔案 hello.sh
1、我們将腳本檔案放入home檔案底下
cd /home
touch hello.sh
vi hello.sh
這樣就能進入到腳本檔案進行編輯操作
在腳本裡放入重新開機指令行即可,腳本檔案如下:
腳本編輯完成,點選esc,不可編輯狀态,在按回車加冒号,輸入wq退出編輯
2、編輯完成後,給予hello.sh檔案執行權限
chmod u+x hello.sh
接下來隻要将腳本加入定時任務裡即可
3、編輯crontab檔案加入定時任務
crontab -e
4、在crontab加入定時任務
表示每1分鐘執行一次重新開機腳本
*/1 * * * * /home/hello.sh
*/1 * * * * 表示每分鐘執行一次 /home/hello.sh 代表腳本路徑
時間規格可根據自行去檢視格則表,這裡我就不多做說明了
5、重載crontab配置檔案
systemctl reload crond.service
6、可利用指令行crontab -l 檢視定時任務
這就是我們剛剛添加hello定時任務。