Bash

如何在特定時間執行重複的 Bash 腳本?

  • October 30, 2014

我如何設置腳本在每週二和周四上午 11:50 執行?

我一直在查看該at命令,但我無法想像如何以我需要的方式從其man頁面中使用它。

at是一次性命令的絕佳工具。然而,要同時重複執行一個程序,正確的工具是cron. 執行crontab -e。它將打開一個編輯器。添加這一行並保存文件:

50 11 * * 2,4 /path/to/script

這將在/path/to/script每週二和周四上午 11:50 執行。 crontab在有限的環境中執行程序。所以,script可能需要自己設置PATH等。

如果機器有一個正確設置的郵件伺服器,任何輸出script都將通過電子郵件發送給擁有該crontab文件的使用者。或者,輸出將被郵寄到 crontab 文件中 MAILTO 變數指定的地址。詳情請參閱man 5 crontab

上面一行的前五列定義了程序執行的時間。它們的含義被記錄man 5 crontab為:

          field          allowed values
          -----          --------------
          minute         0-59
          hour           0-23
          day of month   1-31
          month          1-12 (or names, see below)
          day of week    0-7 (0 or 7 is Sun, or use names)

引用自:https://unix.stackexchange.com/questions/164920