您在這裡

設置crontab定時避免重複運行的一種辦法

James Qi 在 2018年12月23日 - 00:29 發表

  Linux中crontab是一個很有用的定時工具,可以設置很多定時任務,我們一直都在使用。

  最近同事提出白天在服務器上導入數據會讓負載增大、影響用戶正常訪問,希望能設置到晚上自動運行,這個應該很簡單,隻要把手工運行的導入程序命令放在一個定時批處理文件dingshi.sh中,設置crontab晚上自動運行就可以,但要考慮不能重複運行導入。

00 3 * * * root sh /root/dingshi.sh

  避免重複的辦法應該不止一種,我想到的辦法是在這個dingshi.sh的最後一行寫一條修改自己文件名:

cd some_directory
其它處理命令
#最後一行不要改
mv dingshi.sh dingshi.bak

  這樣crontab中的定時命令就找不到可以執行的批處理文件了,當然也就不能重複運行。

  隻有人工修改這個文件以及文件名,才會讓定時處理恢複正常運行。

  這個小技巧記錄一下,也許可以幫得上需要的朋友。

 

自由标簽:

回應

發表新回應

Plain text

  • 不允許使用 HTML 標籤。
  • 自動將網址與電子郵件地址轉變為連結。
  • 自動斷行和分段。