Comment envoyer une pièce jointe avec ssmtp sous Linux?


14

Je peux envoyer des e-mails depuis mon compte gmail par ssmtp sous Linux maintenant. Mais comment puis-je joindre des fichiers à l'e-mail?

Réponses:


9

Pour envoyer une pièce jointe, vous devez coder le message à l'aide de MIME .

Vous pouvez utiliser Mutt

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

ou mpack

mpack -s SUBJECT -D MESSAGE_FILE ATTACHMENT_FILE EMAIL_ADDRESS

Voir également:


Merci. Est-ce donc à dire qu'il n'est PAS possible d'envoyer une pièce jointe par ssmtp seul?
deepsky

3
C'est possible, mais vous devez générer tous les en-têtes MIME d'une manière ou d'une autre. Pourquoi avez-vous seulement besoin d'utiliser ssmtp? Si ssmtpfournit /usr/lib/sendmailou /usr/sbin/sendmail, tout programme de messagerie local devrait pouvoir envoyer via ssmtp.
Mikel

3
@deepsky ssmtp n'est pas une interface utilisateur. Il s'agit d'un MTA (Mail Transport Agent), qui est une infrastructure destinée à être accessible via un MUA (Mail User Agent, également connu sous le nom de "mailreader"). C'est assez impressionnant que vous ayez réussi à vous débrouiller seul sans MUA, mais ce n'est pas une méthode raisonnable de faire les choses. C'est une bonne compétence de débogage réseau que vous avez apprise!
Alan Curry

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

Cette solution ne dépend pas de mutt.


4
Comment cela obtient-il un vote négatif? cela résout le problème.
metrix

3
Soit dit en passant, SSMTP est utilisé par de nombreuses personnes pour envoyer des e-mails automatisés via Gmail: nixtutor.com/linux/send-mail-with-gmail-and-ssmtp
metrix

2
Je sais que cette réponse est arrivée plus d'un an après la question, mais c'est la réponse à la question. Fonctionne très bien, merci.
RTF

2
4 ans plus tard, juillet 2017 - C'est la réponse que je cherchais. Merci, @metrix!
SDsolar

commande uuencode manquante
Pavel Niedoba

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

À condition que SSMTP soit configuré et que vous ayez vérifié que les messages sans pièces jointes atteignent leur destination et ne dépendent pas de mutt.


Je ne pense pas que cela réponde à la question d'origine.
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
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.