0

问题:当我mail在 linux (Ubuntu Server 16.04) 下使用命令作为 root 发送电子邮件时(我的服务器上的几个脚本这样做),From:邮件头中的字段看起来像From: root@mydomain.org. 我希望它看起来像From: admin@mydomain.org

尝试:我已经找到了-a "From: admin@mydomain.org"将字段添加到邮件标题的选项。

我的整个命令如下所示:

echo "content" | mail -s "subject" "recipient@wherever.org" -a "From: admin@mydmain.org"

第二个问题:但是,我不想在脚本中-a使用命令的每一点都编写选项,mail因为这是某种硬编码。

第二次尝试:我最好的尝试是编写一个包装器,尽管我认为应该有一种更简洁的方法来始终将该标题字段添加到使用该mail命令发送的邮件中。

问题:有谁知道不包括硬编码的更好方法?我仍然想使用上面这样一个简单的命令行来不让事情变得不必要的复杂。

最好的

费边

4

1 回答 1

0

mail命令读取 ~/.mailrc 或环境变量给出的不同启动文件MAILRC。(参见手册页,http://manpages.ubuntu.com/manpages/xenial/man1/bsd-mailx.1.html#contenttoc4

此文件可以包含行set from=you@example.org.

conf="$(mktemp)"
trap 'rm -f "$conf"' EXIT
echo set from=you@example.org > "$conf"
export MAILRC="$conf"

# now mail will use you@example.org as From:
于 2018-03-31T23:34:18.087 回答