Bash
如何在特定時間執行重複的 Bash 腳本?
我如何設置腳本在每週二和周四上午 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)