Sendmail 发送 error.log 的内容

Sendmail 发送 error.log 的内容

Ubuntusendmail:我正尝试使用、mailx或(任何可以正常工作的命令)发送电子邮件mail。我正尝试将日志文件的内容作为消息发送。日志位于/var/log/nginx/error.log

我每小时运行一次 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 希望通过其标准输入获取电子邮件标头和正文。
[电子邮件标头 + 空行 + 电子邮件正文]
您尝试提供标头失败。

尝试下面的脚本:

#!/bin/sh
( 
   echo subject: /var/log/nginx/error.log
   echo  
   cat /var/log/nginx/error.log 
) | sendmail -i [email protected] 

相关内容