メールやログを作成せずに、毎日午後11時59分にXスクリプトを実行するようにcrontabを設定するにはどうすればよいですか?
現在、私のcrontabは次のようになっています
@daily /path/to/script.sh
crontab -eを実行するときは、次のことを試してください。
59 23 * * * /usr/sbin/myscript > /dev/null
つまり、毎日59分23時間(*)、毎月、毎週、myscriptを実行します。
詳細と例については、mancrontabを参照してください。
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 ....