Shell指令碼中傳送html郵件的方法

Jet_Zhang發表於2015-05-13

作為運維人員,免不了要編寫一些監控指令碼,並將監控結果及時的傳送出來。那麼透過郵件傳送是比較常用的一種通知方式了。通常的,如果需要傳送的內容是簡單的文字檔案,那麼使用/bin/mailx就可以了,但是如果想要傳送更復雜的,比如表格,且想要結果內容版面要美觀,那只是文字的方式是不夠的,我們可以將結果生成html檔案,然後傳送一個html格式的郵件。

但是/bin/mailx傳送html格式的郵件總是不成功(不是說郵件傳送不成功,而是接受到的郵件仍然是文字檔案,也就是html的原始碼,就像下圖。我嘗試了好多引數及方法都沒有成功)

而用/usr/sbin/sendmail就可以正確的傳送html格式的郵件,sendmail傳送郵件的命令如下:

( echo "Subject: AWR Report"; echo "Content-Type: text/html"; echo "Content-Disposition: inline"; cat awrrpt_1_107525_107529.html; ) | /usr/sbin/sendmail

在郵件客戶端,我們確實也正確的開啟了該郵件:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13885898/viewspace-1652199/,如需轉載,請註明出處,否則將追究法律責任。

相關文章