Email 使用procmail将电子邮件复制到另一个地址并更改“发件人”

Email 使用procmail将电子邮件复制到另一个地址并更改“发件人”,email,procmail,Email,Procmail,我收到由用户在我的一台服务器上生成的电子邮件警报。这些警报由以下程序生成:server@.com它们与第三方软件不能正常工作有关 我正试图使用procmail进行复制,因为我想继续接收这些电子邮件ABC@XYZ.com. 我在寻找邮件,在他们的身体,有C:后面的6个字符,一个点,和3个以上的字符。所有这些都很好,但我想让第三方从我这里收到这些电子邮件bruno@XXXXXX.com而不是服务器 如何将电子邮件复制到第三方并将发件人地址更改为bruno@XXXXX.com? 这是procmail文

我收到由用户在我的一台服务器上生成的电子邮件警报。这些警报由以下程序生成:server@.com它们与第三方软件不能正常工作有关

我正试图使用procmail进行复制,因为我想继续接收这些电子邮件ABC@XYZ.com.

我在寻找邮件,在他们的身体,有C:后面的6个字符,一个点,和3个以上的字符。所有这些都很好,但我想让第三方从我这里收到这些电子邮件bruno@XXXXXX.com而不是服务器

如何将电子邮件复制到第三方并将发件人地址更改为bruno@XXXXX.com?

这是procmail文件:

cat .procmailrc
DROPPRIVS=yes
LOGFILE=$HOME/procmail.log

:0 c:
* B ?? C:......\....
! ABC@XYZ.com

:0 B:
* ^To: .*alerts@XXXXXX.com
! bruno@XXXXXX.com

在管道传输到sendmail之前,插入所需的标题。回想一下!基本上是|$SENDMAIL$SENDMAILFLAGS的简写

我是否正确理解第一个配方就是您想要修改的配方

:0 c  # No lockfile when forwarding
* B ?? C:......\....
| formail -I 'From: bruno@XXXXXX.com' \
  | $SENDMAIL $SENDMAILFLAGS ABC@XYZ.com

你的第二个食谱同样不应该有一个锁定文件;参见

这个答案基本上被第二个配方上为什么有B标志所覆盖;是否确实要检查邮件正文以查找该正则表达式上的匹配项?谢谢您的帮助。是的,这是我想修改的第一个食谱。第二个,是的,我想检查主体是否有特定的字符串。当我提出这个问题时,我一定把这部分从第二个食谱中漏掉了。