プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
cronの実行結果のメール送信先を指定する
結論から書くと、cronの設定ファイル(「crontab -e」で編集できるファイル)の上の方に

MAILTO=hoge@example.com

と書けばOKでした。

例えば

MAILTO=hoge@example.com
0    1    *    *    *    /hoge/hoge01.sh
0    2    *    *    *    /hoge/hoge02.sh
0    3    *    *    *    /hoge/hoge03.sh

と書いておいた場合、hoge01.sh、hoge02.sh、hoge03.shの実行結果が、
それぞれ「hoge@example.com」に通知されます。

また、MAILTOの指定は記述箇所よりも下で有効です。
よって、MAILTOの指定を順番に上書きして、
ジョブ毎のメール送信先を変えることも可能です。

例えば

MAILTO=hoge@example.com
0    1    *    *    *    /hoge/hoge01.sh

MAILTO=hoge2@example.com
0    2    *    *    *    /hoge/hoge02.sh

MAILTO=hoge3@example.com
0    3    *    *    *    /hoge/hoge03.sh

と書いておくと、hoge01.shの実行結果は「hoge@example.com」に、
hoge02.shの実行結果は「hoge2@example.com」に、
hoge03.shの実行結果は「hoge3@example.com」に、
それぞれ通知されます。

あと、ついでなので書いておくと、MAILTOを空にすることでメール通知しないことも可能です。

例えば

MAILTO=""
0    1    *    *    *    /hoge/hoge01.sh
0    2    *    *    *    /hoge/hoge02.sh
0    3    *    *    *    /hoge/hoge03.sh

と書いておいた場合、hoge01.sh、hoge02.sh、hoge03.shの実行結果が、
エラー発生時も含めて、メール通知されません。

理屈としては、

1.環境変数「MAILTO」で指定された宛先にメール送信される
2.環境変数「MAILTO」はcronの設定ファイル内で上書きできる


ということです。

そんな感じ\(--)/
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:● 環境設定関連  thema:パソコンな日々 - genre:コンピュータ  Posted by ササキマコト 

  関連記事