Changelog: Eu fiz uma pequena modificação, adicionando também a opção para enviar um arquivo em anexo, sei que é uma "besteira", porem para mim vai ajudar e muito.
#!/bin/bash
# Para a senha não ficar exposta recomendo usar o shc para gerar executavel binario deste script.
# Artigo em http://www.vivaolinux.com.br/dica/SHC-Compilando-seu-shell-script
# Publicado por http://www.vivaolinux.com.br/perfil/verPerfil.php?login=tarcio
EMAIL_FROM="usuario@ymail.com" # usuario de email que se autentica no servidor SMTP
EMAIL_TO="destino@provedor.com.br" # usuario que receberá os emails
#Servidor SMTP e porta utilizada
SERVIDOR_SMTP="smtp.mail.yahoo.com.br:587" #endereço no servidor SMTP, observar no exemplo o yahoo utiliza a porta 587
SENHA=senha #informe aqui a senha de autenticação no servidor SMTP
ASSUNTO="$HOSTNAME - $1"
MENSAGEM=$2
if [ "$1" == "" ] ;then
ASSUNTO="SEM ASSUNTO"
fi
if [ "$2" == "" ] ;then
MENSAGEM="SEM MENSAGEM"
fi
if [ "$3" != "" ] ;then
MENSAGEM="$2 `cat $3`"
fi
sendEmail -f $EMAIL_FROM -t $EMAIL_TO -u "$ASSUNTO" -m "$MENSAGEM" $ANEXO -s $SERVIDOR_SMTP -xu $EMAIL_FROM -xp $SENHA
[1] Comentário enviado por markintux em 13/09/2009 - 19:08h
ainda não testei seu script mas bem legal cara! Parabéns!
Escrevi um artigo sobre o sendEmail para quem quiser acompanhar e entender melhor como funciona, colocando arquivos para enviar no e-mail e muito mais opções.
[2] Comentário enviado por hmweb em 01/07/2010 - 16:06h
muito simles e funcional seu script, eu apenas aleterei um item criei uma variavel para o usuario de autenticaçao para que se possa enviar email com um usuario atenticado e o endereço que vai no email outro.
no meju caso usei para um script de ackup
ex: aparece para o clietne backup@emresa.com.br mas o usuario real que autentica no servidor e sender@empresa.com.br
ficou assim
EMAIL_FROM="backup@minhaempresa.com.br" # usuario de email que se autentica no servidor SMTP
EMAIL_TO="propietario@minhaempresa.com.br;ti@minhaempresa.com.br" # usuarios que receberao emails (separados por ;)
#Servidor SMTP e porta utilizada
SMTP_USER="sender@empresa.com.br"
SERVIDOR_SMTP="smtp.empresa.com.br:25" #endereçno servidor SMTP, observar no exemplo o yahoo utiliza a porta 587
SENHA=******** #informe aqui a senha de autenticaç no servidor SMTP
ASSUNTO="$HOSTNAME - $1"
MENSAGEM=$2
if [ "$1" == "" ] ;then
ASSUNTO="SEM ASSUNTO"
fi
if [ "$2" == "" ] ;then
MENSAGEM="SEM MENSAGEM"
fi
if [ "$3" != "" ] ;then
MENSAGEM="$2 `cat $3`"
fi
[4] Comentário enviado por ivanxmoretto em 05/01/2012 - 08:43h
Bom dia livyorocha,
Quando se utiliza o 3o parametro ($3), que é o anexo, o script checa e se ele for diferente de "", o conteúdo do anexo é adicionado ao corpo da mensagem (cat $3), a variável $ANEXO na verdade está sem função no script.
E se vc verificar o help do sendEmail não existe opção de enviar um anexo, por isso listo o conteúdo do anexo no corpo da mensagem.
[5] Comentário enviado por livyorocha em 10/01/2012 - 17:29h
mais um duvida:
Eu vou definir que meu arquivo e log do backup vai ficar /home/linux/envio/backup.log como eu coloco para ficar o conteudo desse arquivo no corpo do e-mail ??
[7] Comentário enviado por jeffersonsamaral em 29/06/2012 - 09:09h
Caro Tacio de Jesus Andrade, não estou conseguindo rodar o enviaEmail por qualquer tipo de automação, tipo cron. Se eu o executo manualmente ele funciona, porem por agendamento não envia. Você tem uma noção do que possa ser ?
[8] Comentário enviado por rodpas em 03/08/2012 - 09:32h
Bom dia estou com mesmo problema do jeffersonsamaral se executo ele manualmente funciona perfeitamente....mas se executo pelo crontab ele tambem executa todas as funções recebo o email...porem os campos "ASSUNTO" E "MENSAGEM" ele não traz...tem alguma idéia sobre????
# Envia e_mail Backup Realizado com Sucesso
#
EMAIL_FROM="meue_mail" # usuario de email que se autentica no servidor SMTP
EMAIL_TO="parae_mail" # usuarios que receberao emails (separados por ;)
#Servidor SMTP e porta utilizada
SMTP_USER="meue_mail"
SERVIDOR_SMTP="Servidor smtp:25" #endereco servidor SMTP
SENHA=******** #informe aqui a senha de autenticacao no servidor SMTP
[10] Comentário enviado por esresende em 26/08/2014 - 01:16h
Amigos, boa noite. Estou precisando imensamente de enviar e-mail após a execução de um script. Ao executar o script dava um erro na última linha, então instalei o sendEmail e agorea dá o seguinte erro:
invalid SSL_version specified at /usr/share/perl5/IO/Socket/SSL.pm line 332