Jak mogę wysłać załącznik z ssmtp w systemie Linux?


14

Teraz mogę wysyłać wiadomości e-mail z mojego konta Gmail przez ssmtp w systemie Linux. Ale jak mogę dołączyć pliki do wiadomości e-mail?

Odpowiedzi:


9

Aby wysłać załącznik, musisz zakodować wiadomość za pomocą MIME .

Możesz użyć Mutt

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

lub mpack

mpack -s SUBJECT -D MESSAGE_FILE ATTACHMENT_FILE EMAIL_ADDRESS

Zobacz też:


Dzięki. Czy to znaczy, że NIE można wysłać załącznika przez sam ssmtp?
deepsky

3
Jest to możliwe, ale musiałbyś jakoś wygenerować wszystkie nagłówki MIME. Dlaczego potrzebujesz tylko używać ssmtp? Jeśli ssmtpzapewnia /usr/lib/sendmaillub /usr/sbin/sendmail, dowolny lokalny program pocztowy powinien mieć możliwość wysyłania za pośrednictwem ssmtp.
Mikel

3
@deepsky ssmtp nie jest interfejsem użytkownika. Jest to MTA (agent transportu poczty), czyli infrastruktura przeznaczona do uzyskiwania dostępu przez MUA (agent użytkownika poczty, znany również jako „czytnik poczty”). To trochę imponujące, że byłeś w stanie samemu wdać się w ssmtp bez MUA, ale nie jest to rozsądna metoda robienia rzeczy. Nauczyłeś się jednak dobrej umiejętności debugowania sieci!
Alan Curry

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

To rozwiązanie nie zależy od mutta.


4
Jak odbiera się głos negatywny? rozwiązuje problem.
metrix

3
Nawiasem mówiąc, SSMTP jest używane przez wiele osób do wysyłania automatycznych wiadomości e-mail za pośrednictwem Gmaila: nixtutor.com/linux/send-mail-with-gmail-and-ssmtp
metrix

2
Wiem, że ta odpowiedź nadeszła ponad rok po zadaniu pytania, ale to jest odpowiedź na pytanie. Działa świetnie, dzięki.
RTF

2
4 lata później, lipiec 2017 r. - To była odpowiedź, której szukałem. Dziękuję, @metrix!
SDsolar

brakujące polecenie uuencode
Pavel Niedoba

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

Pod warunkiem, że SSMTP jest skonfigurowany i potwierdziłeś, że wiadomości bez załączników docierają do miejsca docelowego i nie zależą od mutta.


Nie sądzę, że to odpowiada na pierwotne pytanie.
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
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.