Email 从bash邮件中的地址文本设置

Email 从bash邮件中的地址文本设置,email,sendmail,Email,Sendmail,我可以从bash发送邮件,但无法更改from文本,它当前显示为“root” 我希望电子邮件客户端在myserver.com上的from字段脚本中显示以下文本(root@myserver.com) 请问我怎么做 emailsubject="$scriptname ($scriptver) log at $startdate" if [ $errorcount > 0 ]; then emailsubject="ERRORS($errorcount) - ${emailsubject

我可以从bash发送邮件,但无法更改from文本,它当前显示为“root”

我希望电子邮件客户端在myserver.com上的from字段
脚本中显示以下文本(root@myserver.com)

请问我怎么做

emailsubject="$scriptname ($scriptver) log at $startdate"

if [ $errorcount > 0 ]; then
    emailsubject="ERRORS($errorcount) - ${emailsubject}"
fi

mail -s "$emailsubject" tobealerted@hotmail.com < $logfile
emailsubject=“$scriptname($scriptver)在$startdate处记录”
如果[$errorcount>0];然后
emailsubject=“ERRORS($errorcount)-${emailsubject}”
fi
邮件-s“$emailsubject”tobealerted@hotmail.com<$logfile

这不是BASH的问题。这是邮件程序本身的问题

运行命令
人工邮件
,查看该命令的选项。它因系统而异。检查允许您设置邮件发件人或发件人的参数。如果
mail
没有这样的参数,请尝试
mailx
,它有更多选项。(看起来您的系统有名为
mailx
mail

在我的系统上,我使用
mailx
而不是
mail
,并且我可以使用
-r
参数设置发件人地址:

mailx-rpresident@whitehouse.gov-s“机密信息。仅供您观看”<$file
如果您的“邮件”支持它,您可以使用-a开关添加自定义标题,如下所示:

mail -s "subject" -a "From: president@whitehouse.gov" ...

[$errorcount>0]
应该是
[$errorcount-gt 0]
(请参见
人工测试
)。
-一个文件将给定的文件附加到消息中。
@Roman Hocke在我的debian上实际上:
-a,--append=HEADER:VALUE
-a,--Attach=file
mail -s "subject" -a "From: president@whitehouse.gov" ...