Como enviar e-mail do terminal usando um script

Por motivos X ou Y, às vezes precisamos de programar o servidor da nossa empresa para fazer uma determinada tarefa, e queremos saber se esta tarefa foi executada sem problemas, para isso programamos que se tudo correr bem nos avise… mas… ¿Como o servidor pode nos notificar?

Muito simples, vamos te contar por meio de um script Python Envie-nos um email, desta forma quando verificarmos a caixa de correio, iremos ler se o servidor não teve problemas para fazer a encomenda.

O script os deixou aqui: enviar-email.py

Para utilizá-lo é muito simples, abra um terminal, nele escreva o seguinte e pressione [Entrar]:

cd $HOME/ && wget http://paste.desdelinux.net/paste/?dl=89 && mv index.html\?dl\=89 send-email.py && chmod +s send-email.py

Deixo-vos como seria o processo:

% CODE1%

Feito isso, você deve editar o script para colocar seus próprios dados, irei editá-lo colocando meus dados, ou seja, os dados daqui do meu trabalho.

Abra o script (send-email.py) e altere esta informação:

  • seu email@desdelinux.net por seu e-mail (neste exemplo - » kzkggaara@ipichcb.rimed.cu)
  • Corpo da mensagem pelo conteúdo do e-mail (neste exemplo - » Este é um e-mail de teste)
  • you.mailserver.cu pelo seu servidor de e-mail (neste exemplo - » 192.168.1.2)
  • seu email por seu usuário (neste exemplo - » kzkggaara)
  • sua senha para sua senha (neste exemplo - » HAHA ... sim ... claro ... LOL)

Parece o seguinte: send-email.py (modificado)

E pronto, só falta enviar o email ... para isso vamos colocar o seguinte:

  • python send-email.py "Aqui colocamos o assunto" destinatário@domínio.com

Ou seja, devemos executar o script e passar o parâmetro “Assunto” (ou seja, o assunto que o email levará) e também para quem (endereço de email) ele será enviado.

Vou me enviar um email, aqui está o exemplo:

% CODE2%

E agora 😀

Como você pode ver, algo bem simples ... mas pode nos ajudar em certas ocasiões 😉

lembranças


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Jondarlek dito

    é muito bom .. mas eu quero algo assim que funcione para windows mas não consigo encontrar 🙁

    1.    KZKG ^ Gaara dito

      Para Windows ... mmm ... você deve instalar Python no Windows friend: http://www.python.org/getit/windows/

    2.    banheiro dito

      para windows existe uma ferramenta chamada Cobian, é muito boa e intuitiva

  2.   Carlos T. dito

    como habilitar o script para enviar com gmail (smtp)?

    1.    Elwuilmer dito

      Eu tenho a mesma pergunta: /

      Eu poderia:

      s = SMTP ('smtp.gmail.com')
      s.starttls () # Se você usar TLS
      s.ehlo ()

      No entanto, isso me dá este erro:

      python send-email.py "Aqui colocamos o assunto" aquimi@correo.com
      Traceback (última chamada mais recente):
      Arquivo "send-email.py", linha 14, em
      s = SMTP ('smtp.gmail.com')
      Arquivo "/usr/lib/python2.6/smtplib.py", linha 239, em __init__
      (código, msg) = self.connect (host, porta)
      Arquivo "/usr/lib/python2.6/smtplib.py", linha 295, em conectar
      self.sock = self._get_socket (host, porta, self.timeout)
      Arquivo "/usr/lib/python2.6/smtplib.py", linha 273, em _get_socket
      retornar socket.create_connection ((porta, host), tempo limite)
      Arquivo "/usr/lib/python2.6/socket.py", linha 561, em create_connection
      aumento de erro, msg
      socket.error: [Errno 101] A rede está inacessível

  3.   reedyseth dito

    É bom, e então você programa com cron e pronto para renderizar relatórios: D.

    1.    KZKG ^ Gaara dito

      Sim! hehe, economize muito tempo automatize as coisas com scipts 🙂

  4.   ervas daninhas dito

    Obrigado pela postagem, acho interessante e adicionando a funcionalidade que Reedyseth cita tem mais uma utilidade. 😉 saudações compas!

    1.    KZKG ^ Gaara dito

      Obrigado pelo comentário 😀
      Saudações amigo.

  5.   Neo61 dito

    Gaara, meu amigo, tenho certeza que este artigo é muito bom já que todos aqui se destacam, mas eu - NÃO -PUE-DO-SEE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO- NECÇÃO
    O QUE EU FAÇO PARA OS VER, CORTE A MINHA GARGANTA?

    1.    KZKG ^ Gaara dito

      Não consegue abrir este link? - » http://paste.desdelinux.net/89

  6.   Neo61 dito

    Deixa eu te perguntar uma coisa, eu poderia fazer um script para que num determinado dia eu pudesse mandar uma mensagem específica para todos os usuários da minha central? Imagino que sim, mas você é o especialista e se confirmar isso, poderia me ajudar a fazer um?

    1.    KZKG ^ Gaara dito

      Sim, para fazer "algo" em um determinado dia você deve usar crontab.
      Então, supondo que você deseja enviar um arquivo .PDF (por exemplo, note.pdf) para seus usuários, enviar para apenas 1 e-mail seria:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      Agora, para enviar isso, mas não apenas para um endereço, mas para muitos outros ... você precisaria ter os endereços em um arquivo de texto (separados por uma quebra de linha) e, em seguida, usar um loop para. Por exemplo, se você tiver os e-mails em address.txt, seria:

      for i in `cat direcciones.txt`;
      do
      mail -s "Este es el asunto del correo" $i < nota.pdf
      done

  7.   Vela de David dito

    Obrigado amigo, o script funciona muito bem.

  8.   Frank dito

    Onde está o roteiro se você puder me ajudar

  9.   Areli dito

    Você pode compartilhar os exemplos ????