On Thu, Nov 29, 2001 at 11:05:05PM -0400, cmasters wrote: ... | Hope you don't mind the interruption. You may have noticed my slew of | postings about difficulties with sorting mail. I read your reponse to mean
Yes ;-). | that I may not even require the services of procmail, as I ~am~ using exim | as my MTA. Is this correct? I just want fairly simple pre-sorting of mail | before I read it with mutt. Yes. I haven't actually tried it yet since my mail is delivered to a Solaris box that I am not an admin on and I have a quota. I might try setting up exim for filter-only on it, but not yet. Here's a sample .forward file that I created from my procmail recipes after reading that part of the exim manual (as you can see, I wrote part of the manual in my own words at the top) : -------- .forward file ------- # Exim filter # # Some variable/string expansions : # ${reply_address} : contents of Reply-To: if exists or From: # ${sender_address} : contents of envelope sender # ${message_headers} : all headers concatenated (with newlines) # # $header_<header_name>: : contents of the header <header_name> # # # Filter commands : # save <filename> [ <mode> ] # deliver <address> # pipe <command> # # if <condition> then <commands> # [ elif <condition> then <commands> ] # [ else <commands> ] # endif # # finish # testprint <text> : print debug info when filter is being tested # logfile <filename> # logwrite # add <number> to <user var> # # mail [ to <address-list> ] [ cc <address_list> ] [ from <address> ] # [ reply_to <address> ] [ subject <text> ] [ text <text> ] # [ [ expand ] file <filename> ] [ return message ] [ log <logfile> ] # [ once <note filename> ] [ once_repeat <time interval> ] # vacation : a special case of 'mail', for vacation notices. # # # Operators (for 'if' commands) : # # or # and # not # # <var> matches <regex> # <var> does not match <regex> # # <var> begins <text> # <var> does not begin <text> # # <var> ends <text> # <var> does not end <text> # # <var> contains <string> # # <var> is <string> # # <number1> is above <number2> # <number1> is not above <number2> # # <number1> is below <number2> # <number1> is not below <number2> # # personal [ alias <address> ]* : shorthand check for personal mail ; # any number of aliases can be given ; # see docs for details # # ${error_message} : true when the message is a mail delivery error message # # foranyaddress <string> ( <condition> ) : # iterate over list of addresses in <string> and apply <condition> ; # ${thisaddress} is set to the address currently being processed # # # debian-user # if $header_X-Mailing-List: contains "debian-user" then save ~/Mail/lists/debian-user/ endif # # debian-python # if ${message_headers} contains "debian-python@lists.debian.org" then save ~/Mail/lists/debian-python/ endif # # python-tutor # if $header_To: contains "tutor" or $header_Cc: contains "tutor" then save ~/Mail/lists/python-tutor/ endif # # the default action, if nothing else matches # save ~/Mail/filteredinbox/ As you can see it looks more like psuedo code, rather than (arbitry) delimiters. I don't know how to do any complex regex matches like procmail can do, but most of the time my regexes are not complex at all. HTH, -D -- For society, it's probably a good thing that engineers value function over appearance. For example, you wouldn't want engineers to build nuclear power plants that only _look_ like they would keep all the radiation inside. (Scott Adams - The Dilbert principle)