当前位置:  开发笔记 > 前端 > 正文

在Unix"邮件"中更改"发件人:"地址

如何解决《在Unix"邮件"中更改"发件人:"地址》经验,为你挑选了6个好方法。

使用mail TO_ADDR来自的电子邮件中的结果从Unix命令行发送消息$USER@$HOSTNAME.有没有办法更改插入的"发件人:"地址mail

为了记录,我在Ubuntu上使用GNU Mailutils 1.1/1.2(但我看到了与Fedora和RHEL相同的行为).

[编辑]

$ mail -s Testing chris@example.org                                                                  
Cc: 
From: foo@bar.org

Testing
.

产量

Subject: Testing
To: 
X-Mailer: mail (GNU Mailutils 1.1)
Message-Id: 
From: 
Date: Wed, 10 Sep 2008 13:17:23 -0400

From: foo@bar.org

Testing

"From:foo@bar.org"行是邮件正文的一部分,而不是标题的一部分.



1> cms..:

在我的邮件版本(Debian linux 4.0)中,以下选项可用于控制源/回复地址

-a开关,用于附加的报头应用,从供给:将被附加到发送邮件标题中的命令行头

$ REPLYTO环境变量指定一个回复:头

所以以下顺序

export REPLYTO=cms-replies@example.com
mail -aFrom:cms-sends@example.com -s 'Testing'

结果,在我的邮件客户端,是来自cms-sends@example.com的邮件,任何回复将默认为cms-replies@example.com

注意: Mac OS用户:你没有-a,但你确实有$ REPLYTO

NB(2): CentOS用户,许多评论者还说,你需要使用-r-a

注意(3):这个答案至少有十年之久(1),当你从谷歌进来时请记住这一点.


在OS X中不起作用,-a不存在.
在CentOS中,`mail -a`选项的意思是“ attachemnet”。我需要像邮件-r from@whatever.com这样使用-r

2> Beau..:

在Centos 5.3上我能做到:

mail -s "Subject" user@address.com -- -f from@address.com < body

双击阻止邮件解析-f参数并将其传递给sendmail本身.


这似乎适用于CentOS,但不适用于Ubuntu.
你可以帮助,这曾经工作 - 但是,自从最近的更新,它不再有效,它只是尝试另外发送电子邮件到-f @ hostname

3> 小智..:

GNU mailutils的'mail'命令不允许你这样做(至少很容易).但是如果你安装'heirloom-mailx',它的邮件命令(mailx)有'-r'选项来覆盖字段中的默认'$ USER @ $ HOSTNAME'.

echo "Hello there" | mail -s "testing" -r sender@company.com recipient@company.com

适用于'mailx'但不适用于'mail'.

$ ls -l /usr/bin/mail
lrwxrwxrwx 1 root root 22 2010-12-23 08:33 /usr/bin/mail -> /etc/alternatives/mail
$ ls -l /etc/alternatives/mail
lrwxrwxrwx 1 root root 23 2010-12-23 08:33 /etc/alternatives/mail -> /usr/bin/heirloom-mailx


也许知道在Ubuntu 14.04 LTS上预装的GNU mailutils`mail`命令支持`-r`选项可能有用,因此您可以轻松设置发件人地址.

4> 小智..:
mail -s "$(echo -e "This is the subject\nFrom: Paula \n
Reply-to: 1232564@yourserver.com\nContent-Type: text/html\n")" 
milas.josh@gmail.com < htmlFileMessage.txt

以上是我的解决方案....任何额外的标题可以在回复之前和之后添加...只是确保你在添加它们之前知道你的标题语法....这对我来说很有效.



5> 小智..:

此外,最好使用它-F option来指定发件人姓名.

像这样的东西:

mail -s "$SUBJECT" $MAILTO -- -F $MAILFROM -f ${MAILFROM}@somedomain.com

或者只查看可用选项:http: //www.courier-mta.org/sendmail.html



6> Alcanzar..:

也可以使用以下内容设置From名称和地址:

 echo test | mail -s "test" example@example.com -- -F'Some Name' -t

由于某种原因传递-F'Some Name'-fexample2@example.com不起作用,但传递-t到sendmail工作,并"是"容易".

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有