linux mailxを使用してシンプルなメッセージ本文 +ファイル添付ファイルの送信[複製
質問
この質問にはすでに答えがあります:
私は書いています shell script
Linuxを使用して電子メールを送信します Mailx
, 、電子メールにはaが含まれている必要があります 添付ファイル そしてa メッセージ本文.
現在、添付ファイルでメールを送信します:
output.txt | mail -s "Daily Monitoring" james@dell.com
メッセージ本文を追加したいです。どうすればいいですか?
Linux Mailx:
mail [-eIinv] [-a header] [-b addr] [-c addr] [-s subj] to-addr
解決
通常の方法は使用することです uuencode
添付ファイルのために echo
体のために:
(uuencode output.txt output.txt; echo "Body of text") | mailx -s 'Subject' user@domain.com
SolarisとAIXの場合、あなたは echo
最初の声明:
(echo "Body of text"; uuencode output.txt output.txt) | mailx -s 'Subject' user@domain.com
他のヒント
最良の方法は、MPACKを使用することです!
mpack -s "subject" -d "./body.txt" "././image.png" mailadress
mpack-件名 - ボディ - 添付ファイル - メールアドレス
これを試してみてくださいそれは私のために働きます:
(echo "Hello XYX" ; uuencode /export/home/TOTAL_SI_COUNT_10042016.csv TOTAL_SI_COUNT_10042016.csv ) | mailx -s 'Script test' abc@xde.com
Rhel Linuxでは、添付ファイルとしてではなく、電子メールの本文でメッセージを取得するのに苦労しました。 OD -CXを使用して、電子メールの本文にいくつかの /rが含まれていることがわかりました。 PERLスクリプトを使用して /rを剥がし、メッセージが電子メールの本文に正しく挿入されました。
mailx -s "subject text" me@yahoo.com < 'body.txt'
テキストファイルbody.txtにはchar rが含まれていたため、perlを使用して rを剥ぎました。
cat body.txt | perl success.pl > body2.txt
mailx -s "subject text" me@yahoo.com < 'body2.txt'
これはsuccess.plです
while (<STDIN>) {
my $currLine = $_;
s?\r??g;
print
}
;
Johnsywebの答えは私にとってはうまくいきませんでしたが、それはMuttで私には機能します:
echo "Message body" | mutt -s "Message subject" -a myfile.txt recipient@domain.com
あなたはこれを試すことができます:
(cat ./body.txt)|mailx -s "subject text" -a "attchement file" receiver@domain.com
所属していません StackOverflow