procmail/formail syntax question
keramida at ceid.upatras.gr
Sun Oct 23 15:15:52 PDT 2005
On 2005-10-23 17:49, stan <stanb at panix.com> wrote:
>On Sun, Oct 23, 2005 at 10:07:17PM +0200, Roland Smith wrote:
>>On Sun, Oct 23, 2005 at 03:09:51PM -0400, stan wrote:
>>> I'm trying to get procmail to rewrite the TO: header. I've tried something like:
>>> TO=`formail -xTo:`
>> I think this command is expanded only once, and gives an empty string
>> because you didn't give formail any input.
>>> # is moved to "viruses".
>>> * ^X-Virus-Status: Yes
>>> | formail -I "To: is_virus, $TO"
>>> But this does not seem to be working.
>>> What am I doing wrong?
>> Why don't you put it in an appropriate mailbox directly? E.g:
>> * ^X-Virus-Status: Yes
>> * ^X-Spam-Status: Yes
> That is _exactly_ wht _I_ do. However this is for a friend who recieves
> mail on this machine, then uses IMAP to fecth it to a Windoze box where he
> reads it with Outlook. He aparently does not now how to filter within
> Outlook on anything but the subject.
> So, I need to be able to rewrite the subject. Yes it's dumb but....
``Much confusion in you I sense, young Jedi.''
If you want to rewrite the *SUBJECT* of the messages, then why are you
trying to rewrite the *RECIPIENT* header?
Having said that, I think that what you're missing is the 'f' option in
the rule that pipes mail to formail and that you don't really need
formail for something as simple:
* X-Virus-Status: Yes
| sed -e 's/^[sS]ubject:[[:space:]]\+/Subject: [virus] '
More information about the freebsd-questions