私は現在mailxを使って自分のスクリプトからHTML形式のメールを送信しています。
cat body.html | /usr/bin/mailx -a "From: Me <me@domain>" -a "Content-type: text/html" -s "My subject" $RECIPIENTS
今度は添付ファイル(png画像)を追加したいのですが、その方法がわかりません。 私はmuttまたは何か他のものに移動する前にmailxを試してみたいです。 どうもありがとう
あなたの要求が単純ならば、あなたは裸のSendmailを使うことができます。それは私が特にお勧めするものではありませんが、あなたは避けたかったのでmutt
...
# Now that we actually concatenate two files (well, stdin and a file),
# we are no longer eligible for a Useless Use of Cat Award
( cat - body.html <<HERE
Subject: My subject
Mime-Version: 1.0
Content-type: multipart/related; boundary="foooobar"
--foooobar
Content-type: text/html
HERE
cat <<HERE
--foooobar
Content-type: image/png
Content-disposition: inline
Content-transfer-encoding: base64
HERE
base64 image.png
echo; echo '--foooobar--' ) | sendmail -oi $RECIPIENTS
私はこれのための単純で標準的な効用があったことを望みます、しかし残念なことに多くの、すべて多かれ少なかれ相互に互換性がなく、曖昧なものがあります。繰り返しますが、使用できる場合mutt
おそらくそれはあなたが望むことができる最も広くサポートされている標準的なツールです。
これを試して:
uuncode input_file2.jpg attachment2.jpg >>tempfile
cat tempfile | mailx -s "subject" <email>
Uuencodeはファイル(またはデフォルトでは標準入力)を読み取り、エンコードされたバージョンを標準出力に書き込みます。エンコードはASCII文字の印刷のみを使用し、ファイルのモードとuudecodeで使用するためのオペランド名を含みます。 nameが/ dev / stdoutの場合、結果は標準出力に書き込まれます。デフォルトでは標準のUUエンコーディングフォーマットが使用されます。オプション-mがコマンドラインで指定されている場合は、代わりにbase64エンコーディングが使用されます。