目的:HTML本文とバイナリ添付ファイルを使用して(sendmailを使用して)メールを送信する。
次のリンクで指定されているガイドラインに従った
http://www.unix.com/shell-programming-scripting/159522-sendmail-html-body-attachment-2.html
http://www.unix.com/shell-programming-scripting/58448-sendmail-attachment.html
HTML本文またはuuencodeを使用したバイナリ添付ファイルのいずれかが機能しますが、両方は機能しません。
以下に、sendmailへのシェルスクリプトのスニペットを示します。これにより、HTML本体は正常に機能しますが、添付ファイルが誤ってエンコード/デコードされ、同じものを表示できなくなります。
お知らせ下さい。
#!/usr/bin/ksh
export MAILFROM="noreply@site.dom"
export MAILTO="somebody@somesite.com"
export SUBJECT="Test PDF for Email"
export BODY="email_body.htm"
export ATTACH="file.pdf"
export MAILPART=`uuidgen` ## Generates Unique ID
(
echo "From: $MAILFROM"
echo "To: $MAILTO"
echo "Subject: $SUBJECT"
echo "MIME-Version: 1.0"
echo "Content-Type: multipart/mixed; boundary=\"-$MAILPART\""
echo "---$MAILPART"
echo "Content-Type: text/html"
echo "Content-Disposition: inline"
cat $BODY
echo "---$MAILPART"
echo 'Content-Type: application/pdf; name="'$(basename $ATTACH)'"'
echo "Content-Transfer-Encoding: base64"
echo 'Content-Disposition: attachment; filename="'$(basename $ATTACH)'"'
uuencode -m $ATTACH $(basename $ATTACH)
echo "---$MAILPART--"
) | /usr/sbin/sendmail $MAILTO
HP-UXia64を使用しています。フォーラムとWebを検索し、主にPHP、Pythonなどへの参照を見つけました。