GNU/Linux >> Tutoriels Linux >  >> Linux

Linux / UNIX :Comment envoyer des e-mails avec des pièces jointes à l'aide de la commande mailx

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


Linux
  1. Comment envoyer du courrier via un serveur SMTP externe à l'aide de la commande mailx sous Linux ?

  2. Comment envoyer un e-mail HTML à l'aide de la commande "mail" de Linux ?

  3. Comment redémarrer Linux en utilisant la ligne de commande

  4. Envoyer du courrier à partir de la ligne de commande avec un serveur smtp externe sous Linux

  5. Comment trouver un fichier avec name=php.ini sur Linux en utilisant la commande grep

Comment configurer le réseau IP avec la commande nmcli sous Linux

Comment faire des captures d'écran sous Linux avec Scrot

Comment créer un répertoire sous Linux à l'aide de la commande mkdir

Comment utiliser la commande Linux rm avec des exemples

Utilisation de la commande Cat sous Linux avec des exemples

Planifier des travaux sous Linux avec la commande 'at'