コマンド等の実行結果をメールで送信する方法です。
前提条件
前提条件として下記の項目が必要となります。
- mailコマンドがインストールされている
- 自サーバからメール送信が出来る環境が整っている
mailコマンドがインストールされていない場合
「mail」コマンドは「mailx」というパッケージに含まれているので、「yum」でインストールを行ってください。
# yum install mailx
コマンド実行結果をメールで送信する方法
パイプ(|)を使用して、コマンドの実行結果を「mail」コマンドに渡すことで結果をメールで送信することが出来ます。
書式
「mail」コマンドの「-s」オプションで件名を、「-r」オプションで送信元アドレスを指定することが出来ます。
「-r」オプションでの送信元アドレス設定は省略することもできますが、その場合コマンドを実行したユーザがメールの送信元となります。
コマンド | mail -s "件名" -r "送信元アドレス" "送信先アドレス"
実行例
実際に「df」コマンドの実行結果をメールで送信してみます。
$ df -h | mail -s "[$HOSTNAME] `date +%Y-%m-%d` df Report" -r "dfreport@server-memo.net" "tamohiko@server-memo.net"
今回は件名に「$HOSTNAME」でホスト名と「date +%Y-%m-%d」で年月日の情報を含めるようにしています。
送信されたメールの確認
件名にはホスト名と年月日の情報も記述されていて、本文には「df」コマンドの結果が記載されたメールが無事届きました。
コメント