Come faccio a inviare posta dalla riga di comando di Linux in modo che appaia come HTML al destinatario?


10

Ho provato a inviare per e-mail una normale pagina Web usando qualcosa del tipo:

mail -s "Test Email" blah@blah.com < webpage.htm

Tuttavia, il destinatario vede i tag HTML non elaborati nell'e-mail e nessuno della mia attenta formattazione. Sto usando RedHat Linux.

Risposte:


10

Devi dire al MUA che il contenuto contiene HTML. Tradizionalmente questo viene fatto usando MIME. Prova ad aggiungere le seguenti righe di intestazione al tuo messaggio:

Mime-Version: 1.0
Content-Type: text/html

Potrebbe essere necessario aggiungere anche un'intestazione Content-Transfer-Encoding. La pagina di Wikipedia su MIME contiene maggiori dettagli, inclusi collegamenti a RFC rilevanti.

Aggiornamento: ha funzionato bene se convogliato in sendmail -t:

From: me@example.org
To: me@gmail.com
Subject: MIME Test
Mime-Version: 1.0
Content-Type: text/html

<html>
<body>
This is a test.
</body>
</html>

Se ho un tipo di contenuto application/xhtml+xml, viene fornito come allegato. Pensi che possa essere risolto?
Adobe

Un'altra domanda: se ho immagini incorporate nel file html - come posso mantenerle con questo metodo ( sendmail -t)?
Adobe

Per quanto riguarda le immagini incorporate: ho trovato una soluzione , ma gmail non carica le immagini (yahoo do).
Adobe

2

Solucion a envio html

mail -a 'MIME-Version: 1.0' -a 'Content-Type: text/html; charset=iso-8859-1' -a 'X-AUTOR: Ing. Gareca' -s 'MTA STATUS: mail queue' rgareca@hotmail.com  -- -f seincotel@seincotel.com  < /tmp/eximrep.html


1

Sicuro è possibile con la posta:

mail -a 'Content-type: text/html; charset="us-ascii"' foo@bar.com < /file.html

Ricevo un errore: Content-type: text/html; charset="us-ascii": No such file or directory. dalla posta - aiuto, ottengo che l'opzione -a è per passare FILE.
Prabhat Kumar Singh,

0

I messaggi di posta elettronica, come le pagine Web, hanno il tipo di contenuto specificato nelle intestazioni. 'mail' sembra precedere questo e non ne invia nessuno, quindi tutti i MUA ricadono nella visualizzazione del messaggio come testo / chiaro.

Se si desidera specificare manualmente tutte le intestazioni, chiamare sendmail recipient@example.come passare tutto ad esso.

<subjective>Ma ricorda che mentre le e-mail HTML non sono apprezzate da alcune persone (incluso me), ricevere e-mail HTML senza un testo alternativo / parte semplice è davvero fastidioso . Quindi, a meno che tu non sia assolutamente sicuro che il destinatario possa vedere bene i messaggi HTML, sarebbe meglio inviare un messaggio multipart con una parte in testo normale come alternativa.</subjective>


SMTP (STD 11 / RFC 823, 1982) precede di fatto MIME (RFC 2045, 1996) e tutta la sua bontà abilitata all'HTML. È stato formato da pelli di bufalo all'alba di Internet.
Gerald Combs,

Gerald: intendevo mailxMUA (che per qualche motivo ritengo sia ancora più vecchio), non e-mail stesso.
user1686

Secondo la pagina mail (1) di OS X, "Un comando di posta appariva nella versione 1 AT&T UNIX". Ubuntu dice che era la versione 3 AT&T UNIX. In entrambi i casi sembra essersi presentato intorno al 1971 o al 1973.
Gerald Combs,

0

uuencode webpage.html webpage.html | mail -s "subject" email@address

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.