Send mail to yourself and read in your favourite client and configure the rules to move to directory.

By default when you send a mail using sendmail, the mail goes to the default directory. What I wanted to do was, use rss2email, to send the mails and then sort them in different folders depending on the From address.

Sendmail uses procmail to deliver mail locally. So here\’s what I had to do:

Configure the rss2email to send the mail to amit@localhost

Next, configure the procmail to deliver mail to my home directory. To do this we will use the <dot>procmailrc file in the home directory. The contents of the file are :

PATH=/usr/local/bin:/usr/bin:/bin
MAILDIR=$HOME/Maildir      #you\’d better make sure it exists
DEFAULT=$MAILDIR/inbox   #completely optional
LOGFILE=/var/log/from   #recommended

This sets the folder for the mail delivery to $HOME/Maildir. The format for the mail file would be mbox and the filename used for mail delivery would be inbox. Ensure that the folder and file exists. Now we will add some rules to place the mail in the appropriate file(or folder in mbox terminology)

:0
* ^From.*shell*
{
:0
commands
}

The rule states that if the from field contains shell then move the message to the commands file rather than inbox folder. You can add as many rules as you want and you are done.

To test your rule:

create a file called test.msg with the contents

From: shell commands

and run the command:

procmail ~/.procmailrc <test.msg

and check which file the message went to … and you are done.

About Amit Agarwal