Command Line Interface (emate)

MailMate includes a shell command named emate which is located inside the MailMate application bundle. It can be used to create and, optionally, send emails directly from the command line.

It is recommended to make a symbolic link to emate and never make a copy. This ensures that new versions of MailMate automatically updates the emate command as well. Make sure ~/bin/ exists and paste the following in the Terminal:

mkdir -p ~/bin/
ln -s /Applications/MailMate.app/Contents/Resources/emate ~/bin/emate

This is the current output when asking emate for --help:

usage: emate mailto [-h] [-v] [-f FROM] [-t TO] [-c CC] [-b BCC] [-r REPLYTO]
                    [-s SUBJECT] [--header HEADER] [--send-now]
                    ...

MailMate command line interface.

positional arguments:
  attachments

optional arguments:
  -h, --help            show this help message and exit
  -v, --verbose         verbose output
  -f FROM, --from FROM  email address for the sender
  -t TO, --to TO        email address to send to
  -c CC, --cc CC        email addresses to add to cc
  -b BCC, --bcc BCC     email address to add to bcc
  -r REPLYTO, --replyto REPLYTO
                        email address for replies
  -s SUBJECT, --subject SUBJECT
                        subject for email
  --header HEADER       arbitrary header formatted as "<name>: <value>"
  --send-now            send email immediately

The following is an example of creating a message with a tag named special:

echo "The body of the message." | emate mailto --to "Info <info@example.com>" --subject "The subject of the message." --header "#flags: special"

Here is an example of attaching a file to a new message:

echo "The body of the message." | emate mailto --to "Info <info@example.com>" ~/Desktop/file.txt