Linuxでssmtpを使用して添付ファイルを送信するにはどうすればよいですか?


14

LinuxのssmtpでGmailアカウントからメールを送信できるようになりました。しかし、どうすればファイルをメールに添付できますか?

回答:


9

添付ファイルを送信するには、MIMEを使用してメッセージをエンコードする必要があります。

Muttを使用できます

mutt -s SUBJECT -a ATTACHMENT_FILE_1 ATTACHMENT_FILE_2 -- EMAIL_ADDRESS < MESSAGE_FILE

またはmpack

mpack -s SUBJECT -D MESSAGE_FILE ATTACHMENT_FILE EMAIL_ADDRESS

こちらもご覧ください:


ありがとう。だから、ssmtpだけで添付ファイルを送信することは不可能だと言うのですか?
-deepsky

3
可能ですが、何らかの方法ですべてのMIMEヘッダーを生成する必要があります。なぜあなただ​​けを使用する必要がありますssmtpか?場合はssmtp提供し/usr/lib/sendmailたり/usr/sbin/sendmail、任意のローカルメールプログラムを経由して送信することができるはずですssmtp
ミケル

3
@deepsky ssmtpはユーザーインターフェイスではありません。これはMTA(メールトランスポートエージェント)であり、MUA(メールユーザーエージェント、「メールリーダー」とも呼ばれる)を介してアクセスするためのインフラストラクチャです。MUAを使用せずに自分でssmtpを絞ることができたのは印象的ですが、それは物事を行う合理的な方法ではありません。しかし、これはあなたが学んだ優れたネットワークデバッグスキルです!
アランカレー

21
echo -e "to: receiver@domain.tld\nsubject: subject\n"| (cat - && uuencode /path/to/attachment attachment.name) | ssmtp receiver@gmail.com

このソリューションはmuttに依存しません。


4
これはどのように否定的な投票を得ていますか?問題を解決します。
マトリックス

3
ところで、SSMTPは、Gmailを介して自動化された電子メールを送信するために多くの人々によって使用されています。nixtutor.com
linux

2
この答えは、質問が出されてから1年以上経ってから来ましたが、これは質問に対する答えです。すばらしい、ありがとう。
RTF 14

2
4年後の2017年7月-これが私が探していた答えです。ありがとう、@ metrix!
–SDsolar

uuencodeコマンドがありません
パベルニエドバ

1
$ echo -e "to: receiver@domain.tld\nsubject: test\n"| (cat - && uuencode /path/to/file file.name) | ssmtp sender@gmail.com

SSMTPが構成されていて、添付ファイルのないメッセージが宛先に到達し、muttに依存していないことを確認した場合。


これは元の質問に答えるとは思わない。
slm

0
 $ sudo apt-get install uudeview
 $ echo -e "From: myaddress@mydomain.com\nTo: youraddress@yourdomain.com\nSubject: mySubject\n\nBody-Text"|uuenview -a -bo MyAttachment|sendmail -t
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.