Email 转发邮件,将正文开头添加到邮件主题
如何使用例如procmail将body的开头附加到邮件的主题?新邮件的正文可以删除。更新仅提取mime文本部分 可以这样做:Email 转发邮件,将正文开头添加到邮件主题,email,email-headers,procmail,Email,Email Headers,Procmail,如何使用例如procmail将body的开头附加到邮件的主题?新邮件的正文可以删除。更新仅提取mime文本部分 可以这样做: :0 c * optional rules { MAILSUBJ=`formail -zcxSubject:` MAILBODY=`/usr/local/bin/extract-mime-text.sh` NEWSUBJ="$MAILSUBJ $MAILBODY" :0 fw | formail -I"Subject: $NEWS
:0 c
* optional rules
{
MAILSUBJ=`formail -zcxSubject:`
MAILBODY=`/usr/local/bin/extract-mime-text.sh`
NEWSUBJ="$MAILSUBJ $MAILBODY"
:0 fw
| formail -I"Subject: $NEWSUBJ"
:0
!sms@x.com
}
使用/usr/local中的脚本
#!/bin/bash
T=/tmp/tmpmail.$$.$RANDOM
cat /dev/stdin > $T
for i in `reformime -i < $T | grep -B1 "content-type: text/plain" | grep section | cut -d: -f2`; do
reformime -s$i -e < $T | sed -e "s/[ \t]\+/ /g" | tr -d "\n"
done
rm $T
#/bin/bash
T=/tmp/tmpmail.$$.$RANDOM
cat/dev/stdin>$T
对于'reformime-i<$T | grep-B1“内容类型:text/plain”| grep section | cut-d:-f2`中的i;做
重整时间-s$i-e<$T|sed-e“s/[\T]\+//g”| tr-d“\n”
完成
rm$T
通过这种方式,您可以很好地将邮件转发到进行SMS转发的伪电子邮件地址(邮件文本部分的开头将以主题结尾,因为在许多情况下,只有主题被转发到SMS)我不熟悉
reformime
——显然它来自邮件投递包。在Procmail中使用Maildrop工具很有趣,但我并不抱怨。(-: