Enviando e-mail do sendmail com cabeçalhos

3

Estou tentando enviar um e-mail com sendmail , mas preciso especificar alguns cabeçalhos (De, Content-Type, Subject). Aqui está o comando que estou executando atualmente:

echo "Content-Type: text/plain\r\nFrom: [email protected]\r\nSubject: Test\r\n\r\nThe body goes here" | sendmail -f [email protected] [email protected]

O problema é que os cabeçalhos não estão sendo definidos. Eu tenho o formato correto?

    
por Justin 07.01.2012 / 06:50

2 respostas

4

Você precisa usar echo com o parâmetro 'e'.

 -e  
    Enable interpretation of the following backslash-escaped characters in each STRING:  
      \n          new line  
      \r          carriage return

Se você observar o resultado do envio de mensagens com seu comando, verá o seguinte:

Content-Type: text/plain\r\nFrom: [email protected]\r\nSubject: Test\r\n\r\nThe body goes here

(Ela aparece literalmente como uma única linha, incluindo os 'caracteres especiais')

Ao aplicar a modificação acima, leve, o seu código funciona bem:

echo -e "Content-Type: text/plain\r\nFrom: [email protected]\r\nSubject: Test\r\n\r\nThe body goes here" | sendmail -f [email protected] [email protected]
    
por 07.01.2012 / 07:11
0

Use printf

printf "Content-Type: text/plain\r\nFrom: [email protected]\r\nSubject: Test\r\n\r\nThe body goes here" | sendmail -f [email protected] [email protected]

    
por 19.05.2018 / 22:59