procmail
[Top] [All Lists]

Re: Use of B ?? and $MATCH

2005-10-21 20:02:31
Gerald V. Livingston II:

#Vonage stuff
:0
* ^From:(_dot_)*14095551212(_at_)vm\(_dot_)vonage\(_dot_)com
* B ?? Date:\/.* [AP]M
{ VMDATE="Date- $MATCH" }
:0
* ^From:(_dot_)*14095551212(_at_)vm\(_dot_)vonage\(_dot_)com
* B ?? From:\/.*\)
{ VMFROM="From- $MATCH" }
:0
* ^From(_dot_)*14095551212(_at_)vm\(_dot_)vonage\(_dot_)com
* ! ^X-loop: gvl2(_at_)example(_dot_)tld
{
:0c
| (echo "Subject: Voicemail";\
echo $VMDATE;\
echo $VMFROM;\
)|/usr/sbin/sendmail -oi 4095552121(_at_)messaging(_dot_)sprintpcs(_dot_)com
}


Clean it up, use much more white space:

#Vonage stuff
   :0
    * ^From:(_dot_)*14095551212(_at_)vm\(_dot_)vonage\(_dot_)com
    * ! ^X-loop: gvl2(_at_)example\(_dot_)tld
    {
        :0
        * B ?? Date:\/.* [AP]M
        { VMDATE = "Date- $MATCH" }

        :0
        * B ?? From:\/.*\)
        { VMFROM = "From- $MATCH" }

        :0c hi
        | (echo "Subject: Voicemail";\
           echo $VMDATE;\
           echo $VMFROM;\
          )|$SENDMAIL -oi 4095552121(_at_)messaging(_dot_)sprintpcs(_dot_)com
    }


It still gives me this error even though it works. Should I use
the "i" flag to stop that even though it's not  specifying a pipe
that was closed early or other such specific error message?

You are sending the full message into that pipe, but the message is not
used.

Example:
  echo "abc" | echo "xyz"
will echo only "xyz", so the "abc" got lost.

Either use the VAR = `command` format, or just send on average as little
as possible (h-flag) and use the i-flag.

See `man procmailrc` for $SENDMAIL and $SENDMAILFLAGS.

-- 
Grtz, Ruud


____________________________________________________________
procmail mailing list   Procmail homepage: http://www.procmail.org/
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail

<Prev in Thread] Current Thread [Next in Thread>