Maneira padrão e portátil de enviar email do console?

4

Qual é a maneira mais portátil ou padrão de enviar um e-mail do console ou um script no Linux e, possivelmente, no Unix?

    
por Totor 20.05.2014 / 11:54

3 respostas

2

Para fazer isso, você pode usar o comando mailx . Abaixo está um exemplo de uso:

mailx -v -s "Subject" -S smtp-use-starttls -S ssl-verify=ignore -S smtp-auth=login -S smtp=smtp://<server_name>:25 -S from="[email protected]" -S smtp-auth-user=<username> \
-S smtp-auth-password=<password> [email protected]

Este exemplo está usando autenticação SSL e SMTP.

    
por 20.05.2014 / 12:06
1

Se você quiser portabilidade como padrão, use mailx . Os comandos mail e Mail são comuns, mas não padrão, e podem ter opções muito diferentes em sistemas unix (incluindo entre instalações da mesma distribuição Linux). Apenas algumas opções para mailx são padronizadas; Por exemplo, se você quiser cabeçalhos personalizados, não terá sorte.

Observe que isso só funciona se um sistema de correio unix estiver configurado (deve haver pelo menos um comando sendmail configurado para conversar com um MTA local ou remoto). Em geral, isso pode ser considerado o caso em servidores com administradores competentes. Em computadores desktop, o e-mail é normalmente configurado pelo usuário em cada cliente de e-mail.

    
por 21.05.2014 / 09:40
0

Se você assumir que a máquina tem seu sendmail configurado corretamente, você pode usar simplesmente

mailx -s Subject [email protected] < myemail.txt

É mais e menos portável que a outra resposta. Por um lado, o sendmail tem que ser configurado na máquina. Por outro lado, se estiver configurado, as configurações apropriadas serão usadas, em vez de algumas configurações arbitrárias.

EDIT: alterou mail para o padrão mailx .

    
por 20.05.2014 / 16:33