linux系統定時執行shell腳本


我們可能會經常需要在linux系統中做一些重復而又繁瑣的操作,為了解放自己,我們需要將這些東西寫到定時任務里面,讓它每天執行

大概思路如下

  • 根據自己的需求完成shell腳本
  • 將腳本的執行語句加到linux自帶的crontab文件中

廢話少說 上例子

我寫了一個 test.sh的shell腳本,目錄是/home/joe/shell/test.sh
  1. chmod 777 test.sh //給test文件賦予可執行權限

  2. crontab -e //編輯crontab文件

  3. 0 7 * * * /home/joe/shell/test.sh >> /home/joe/shell/test.log 2>&1

    ​ //在文件最后加這行 , 每天早上7點會執行這條語句,並將執行日志打印在同目錄的test.log下

  4. crontab -l //查看定時任務情況。

  5. 進入目錄查看日志驗證定時任務是否正常運行。


crond定時任務:

每五分鍾執行 */5 * * * *

每小時執行 0 * * * *

每天執行 0 0 * * *

每周執行 0 0 * * 0

每月執行 0 0 1 * *

每年執行 0 0 1 1 *


常見的問題:
  1. 寫好sh腳本 然后利用Crontab -e 進行部署,00 11 * * * /home/dir/baidu_update_data.sh > /file.log 2>&1類似於之中格式,

  2. /bin/bash^M: bad interpreter: No such file or directory

報錯的原因是:在Windos下與Linux下編輯,格式會有差異,Windows上傳的東西,導致格式變了,所以只需要改一下格式

vi name

:set ff=unix

  1. Could not open input file for reading 報錯:注意腳本放的目錄和權限。

  2. 觀察執行成功是否,需要看日志;日志非常重要!!!


免責聲明!

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



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