J'utilisais Mutt pour envoyer des emails depuis une autre application & Cela fonctionne très bien. Je dois envoyer des fichiers HTML et actuellement, je dois les envoyer en tant que pièces jointes. Donc j'utilise
mutt -s "hi" -a attach.html [email protected] < /dev/null
Mais si j'essaie d'envoyer le fichier html en tant que corps comme suit
mutt -e content_type=text/html Email address -s "subject" < test.html
alors au lieu du fichier html, je récupère le texte source du fichier html.
Existe-t-il un moyen de transformer le corps du message en HTML, au lieu d'un texte en clair ???
Quand j'essaye votre commande, Mutt me dit que content_type=text/html
est une commande inconnue. Vous devez donc utiliser la commande "set" pour que cela fonctionne:
mutt -e "set content_type=text/html" Email address -s "subject" < test.html
Cela a fonctionné dans mes tests.
J'ai essayé avec mutt 1.6d et l'option -e "set content_type = text/html" ne fonctionne pas pour moi. Après la recherche autour, j'ai trouvé ci-dessous la ligne de commande qui fonctionne pour moi:
mutt -e "my_hdr Content-Type: text/html" [email protected] -s "subject" < mytest.html
Référence ici
ma version de mutt est 1.4.x, et je ne peux pas non plus définir content_type = text/html, il est signalé en tant que variable inconnue.
et j’ai vérifié le mutt doc , le content_type n’est supporté que par la version 1.5.x, telle que la dernière version 1.5.21.
évidemment, le courrier html n'était pas supporté par la version 1.4.x.
J'utilise Mutt 1.5.23 pour envoyer un courrier électronique HTML avec image intégrée, et cela fonctionne pour moi .mutt -e "set content_type=text/html" Email -s "subject" -a pic.png < test.html
fichier test.html:
<html>
<head></head>
<body>
<img src="cid:pic.png" " />
</body>
</html>
Si vous regardez la source d'un email HTML, vous verrez au moins quelque chose comme:
Subject: test html mail
From: [email protected]
To: [email protected]
Content-Type: multipart/alternative; boundary=bcaec520ea5d6918e204a8cea3b4
--bcaec520ea5d6918e204a8cea3b4
Content-Type: text/plain; charset=ISO-8859-1
*hi!*
--bcaec520ea5d6918e204a8cea3b4
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
<p><b>hi!</b></p>
--bcaec520ea5d6918e204a8cea3b4--
Donc, vous devez créer un en-tête "Content-Type:", et ajouter les limites au-dessus de la version texte, et au-dessus et au-dessous de la version HTML.
Compte tenu de la quantité de travail manuel nécessaire, vous pouvez également transmettre le message à sendmail au lieu de mutt.