Linux – How to send mail from linux command line so it appears as HTML to recipient

emailhtmllinux

I've tried emailing a normal web page using something like:

mail -s "Test Email" blah@blah.com < webpage.htm

However, the recipient sees the raw HTML tags in the email and none of my careful formatting. Am using RedHat Linux.

Best Answer

You need to tell the MUA that the content contains HTML. Traditionally this is done using MIME. Try adding the following header lines to your message:

Mime-Version: 1.0
Content-Type: text/html

You may need to add a Content-Transfer-Encoding header as well. The Wikipedia page on MIME has more details, including links to relevant RFCs.

Update: This worked fine when piped into sendmail -t:

From: me@example.org
To: me@gmail.com
Subject: MIME Test
Mime-Version: 1.0
Content-Type: text/html

<html>
<body>
This is a test.
</body>
</html>
Related Topic