
我正在為 cygwin 編寫 bash (.sh) 腳本。我想在特定時間運行特定命令。
我嘗試了以下方法:
echo "test" | at 19:00
但我收到以下錯誤:
The AT command has been deprecated. Please use schtasks.exe instead.
那麼我只能使用 Windows 中的排程任務來實現此目的嗎?
答案1
Unix 中的指令at
在 Cygwin 上不可用。 Cygwin 傳統上使用at
Windows 中的命令,但這已被棄用,取而代之的是schtasks.exe
.
所以你的問題的答案是肯定的:你只能使用 Windows 中的排程任務來執行一次任務。
(您可以cron
在特定日期的特定時間使用並設定它...但除非您從 crontab 中刪除該任務,否則它每年都會重複。);-)
答案2
您可以新增一個 cron 作業。
從要執行 bash 腳本的使用者登入。
執行crontab -e
命令。
現在假設如果您想在每天 19:00 準確地執行 bash 腳本,那麼您需要添加如下行:
00 19 * * * /path/to/bash/script
注意:該腳本必須為該使用者設定可執行位。