linux のスクリプトで添付ファイルを使いたい

添付ファイルのないメールは簡単に送れますね。

sendmailコマンドを使えば、本文や件名などを指定してスクリプトからメールを送ることは、指して難しい事ではないですね。
HTMLを添付させてメールを送りたくて、いろいろ試行錯誤しました。
結果、いくつかの方法ができましたのでご紹介。

最初は、uuencodeで簡単に作ってみました。
動作も簡単で、HTMLファイルもメーラーでは見られたのですが、一部のwebmailシステムで正常に動作しないことがわかりました。
具体的には、エンコードされた本文がそのまま見える・・・。

muttを使ってみました。
簡単でした。
通常はこの方法で事足りると思います。

mutt -a 添付したいファイル -s "subject" mailto < 本文のファイル

用法はこんな感じですね。
問題だったのは、fromの欄を書き換えたかったからです。

最終的に、 MIMEヘッダを出力するスクリプトを作り、MTAに投げ込む形になりました。
muttMIMEヘッダを自動作成してくれるので、楽ですね。

スクリプトに関しては、次の記事で書く予定です。
#職場用に作ったもので、そのまま公開できまへん

キーワードとしては下記のような感じでしょうか
MIME
BASE64
マルチパート
sendmail
bash
html