SSMTP:本文と添付ファイルを含む電子メールを送信する方法

SSMTP:本文と添付ファイルを含む電子メールを送信する方法

現在、この質問に対する回答に基づいて、次のコマンドを使用してUbuntuサーバーから電子メールを送信しています。https://unix.stackexchange.com/a/90881/166614

printf "subject: the subject\n\nMessage body"| (cat - && uuencode "$attach" $(basename "$attach")) | ssmtp <email>

これまでの唯一の問題は、上記のコマンドが$attach変数で示されたファイルと、名前にランダムな数字を含むメッセージテキストと推定される内容を含むテキストファイルを含む2つの添付ファイルを生成することです。コマンドを削除すると、(cat - && uuencode "$attach" $(basename "$attach"))電子メールに必要な本文がありますが(明らかに)添付ファイルはありません。逆に、本文を削除すると、テキスト添付ファイルは存在しません。

SSMTPを介して本文と添付ファイルを含む電子メールを送信する方法を知っている人はいますか?

答え1

実行方法は次のとおりです。

Gmailを使用してコマンドラインから画像添付ファイルを含むメールを送信する最も簡単な方法は何ですか?


sudo apt-get update
sudo apt-get install mpack

mpack -s "Subject line" -d body.txt attachment.png [email protected]

これより簡単ではありません。


短いコマンドラインを好む場合は、次のようにタイトル行を本文ファイルに配置できます。

message.txtの内容:

SUBJECT:  P&L Chart for board meeting this Tuesday
(blank line is required here)
Hello Mr. Jarvis,
blah, blah, blah

コマンドライン:

mpack -d message.txt plchart.jpg [email protected]

答え2

私はついにmpackこの仕事にそれを使うことにしました。これは私が質問した正確な質問に対する答えではありませんが、mpack必要のない機能を備えた電子メールクライアントをインストールせずに電子メールを送信する簡単な方法を提供すると思います。つまり、正しい質問に回答できる人がいる場合は、投稿してください。

以下は、コマンドラインで本文と添付ファイルを含む電子メールを送信するために今使用するコマンドです。

attachment=/location/of/attachment
printf "Body text here." | mpack -a -s "Subject here" -d /dev/stdin -m 0 -c $(file -b --mime-type $attachment) "$attachment" <email address>

関連情報