次のcronjobがあります。
0 0 * * 7 [ $(date +\%d) -le 07 ] && /home/archiver/archiver.sh &> /home/archiver/output
cron + bashの観点から見ると、毎月最初の日曜日に実行されます(私の考えはそう思いました。今日実行されますが、次の日曜日に何が起こるか見てみましょう、ハハ)。
しかし、&> /home/archiver/output
受け入れられないようです。スクリプトは非常におしゃべりで/home/archiver/output
、変更/変更されたタイムスタンプは00:00:01ですが、完全に空です。
スクリプトの出力をキャプチャするために何が欠けていますか?
答え1
&>
あなたのcronはbashの段落機能を知らないか使用していないようです。このようにリダイレクトを作成すると
/home/archiver/archiver.sh >/home/archiver/output 2>&1
動作する必要があります。また>>/home/archiver/output 2>&1
、常にログファイルに追加したいと思います。