質問

電子メールを送信したりログを作成したりせずに、毎日午後 11 時 59 分に X スクリプトを実行するように crontab を設定するにはどうすればよいですか?

現在、私のcrontabは次のようになります

@daily /path/to/script.sh
役に立ちましたか?

解決

crontab -e を実行するときは、次のことを試してください。

59 23 * * * /usr/sbin/myscript > /dev/null

つまり:毎月、平日の毎日 59 分 23 時間 (*) に myscript を実行します。

見る 男クロンタブ さらに詳しい情報と例については、こちらをご覧ください。

他のヒント

フォローアップ svristの答え、 シェルに応じて、2>&1 を実行する必要があります > /dev/null にしないと、stderr からの出力が表示されます。

以下は stdout と stderr の両方を沈黙させます。

59 23 * * * /usr/sbin/myscript > /dev/null 2>&1

次のコードは stdout を沈黙させますが、stderr は引き続き (stdout 経由で) 表示されます。

59 23 * * * /usr/sbin/myscript 2>&1 > /dev/null

Advanced Bash Scripting Guide の IO リダイレクトに関する章 は良い参考資料です。2>&1 を検索すると、いくつかの例が表示されます。

上記の応答により、stderr に書き込まれたテキストが記載された電子メールを受信します。これをリダイレクトして、代わりにスクリプトがログを書き込むようにする人もいます。

... 2>&1 ....
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top