Question :Comment envoyer un e-mail avec des pièces jointes à partir d'une machine Linux à l'aide de la commande mailx ?
Réponse :
La syntaxe de base pour envoyer des e-mails depuis une machine Linux à l'aide de la commande mailx est illustrée ci-dessous :
# echo "this is the body of the email" | mailx -vvv -s "test mail" -r "From" -S smtp="your-smtp" someone@address
ici,
-vvv = Verbosity. -s = Specifies the subject. -r = Email sent from. -S = Specifies the smtp server.
Méthode 1 :utilisation de uuencode (ancienne méthode)
Si la version de mailx est inférieure à 12.x, vous pouvez utiliser la commande uuencode pour envoyer des e-mails avec pièces jointes.
# uuencode [path/to/file] [name_of_attachment] | mailx -s "Subject" [email protected]
Méthode 2 :-un commutateur dans la commande mailx
Utilisez le nouveau commutateur de pièce jointe (-a) dans mailx pour envoyer des pièces jointes avec le courrier. L'option -a est plus facile à utiliser que la commande uuencode.
# mailx -a file.txt -s "Subject" [email protected]
La commande ci-dessus imprimera une nouvelle ligne vierge. Tapez le corps du message ici et appuyez sur [ctrl] + [d] pour envoyer. Cela joindra correctement le fichier à l'e-mail sortant avec le type de contenu et les en-têtes de limite appropriés.
Pour rendre cela plus "scriptable", vous pouvez envoyer le message sans corps avec ce qui suit :
# mailx -a file.txt -s "Subject" [email protected] < /dev/null
Pour envoyer des e-mails avec un corps de message, remplacez /dev/null dans la commande ci-dessus par votre fichier de corps de message.
Dans la nouvelle version de mailx, les en-têtes utilisés dans les e-mails sortants sont passés de :
From: Date: To: Subject:
au formulaire ci-dessous :
From: Date: To: Subject: User-Agent: MIME-Version: Content-Type: Content-Transfer-Encoding:REMARQUE : Vérifiez les en-têtes dans l'e-mail reçu. Les e-mails qui ont été envoyés avec l'ancienne méthode de pièce jointe uuencode auront un type de contenu de Content-Type :text/plain sans limite. Les e-mails contenant des pièces jointes utilisant le nouveau commutateur mailx -a auront Content-Type :multipart/mixed ; bound="=...." headers.Linux / UNIX :Envoyer un e-mail avec pièce jointe à l'aide de mutt
Comment envoyer des e-mails avec pièces jointes à l'aide de la commande solaris mailx