
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 のスケジュールされたタスクは、タスクを 1 回実行するためにのみ使用できます。
(cron
特定の日付の特定の時間に使用して設定できますが、crontab からタスクを削除しない限り、毎年繰り返されます。) ;-)
答え2
代わりに cron ジョブを追加することもできます。
bash スクリプトを実行するユーザーからログインします。
コマンドを実行しますcrontab -e
。
ここで、毎日 19:00 に bash スクリプトを実行したい場合は、次のような行を追加する必要があります。
00 19 * * * /path/to/bash/script
注意: そのスクリプトには、そのユーザーに対して実行可能ビットが設定されている必要があります。