
Ubuntu
sendmail
: 、、mailx
または(有効なものなら何でも)を含む電子メールを送信しようとしていますmail
。ログ ファイルの内容をメッセージとして送信しようとしています。ログは にあります/var/log/nginx/error.log
。
私は、エラー ログに何か変更があったかどうかを確認するために 1 時間ごとに cron を実行し、変更があった場合は、そのエラー ログを電子メールで自分に送信しようとしています。sendmail、mailx、mail を使用した定期的なテストは、私にとっては問題なく機能しています。
これ作品(しかし、私が望んでいるものではありません):
echo "My test email being sent from sendmail" | /usr/sbin/sendmail [email protected]
私は次のことを試しました (どれも機能しませんでした): 、、、、、明らかに 初心者です。
sendmail [email protected] < /var/log/nginx/error.log
/var/log/nginx/error.log | /usr/sbin/sendmail [email protected]
cat /var/log/nginx/error.log | /usr/sbin/sendmail [email protected]
mailx [email protected] < /var/log/nginx/error.log
cat /var/log/nginx/error.log | mailx [email protected]
答え1
Sendmail は、stdin 経由で電子メール ヘッダーと本文を取得することを期待しています。
[電子メール ヘッダー + 空行 + 電子メール本文]
ヘッダーの提供に失敗しました。
以下のスクリプトを試してください:
#!/bin/sh
(
echo subject: /var/log/nginx/error.log
echo
cat /var/log/nginx/error.log
) | sendmail -i [email protected]