Com enviar correu des de la terminal mitjançant un script

Per X o per Y motius, de vegades necessitem programar el servidor de la nostra empresa perquè faci determinada tasca, i desitgem saber si aquesta tasca la va executar sense problemes, per això li programem que si tot va transcórrer sense problemes, ens notifiqui ... però ... com ens pot notificar al servidor?

Molt simple, li direm mitjançant un script Pitó que ens enviï un correu electrònic, d'aquesta forma quan revisem la bústia, llegirem si el servidor no va tenir problemes per efectuar l'ordre.

L'script se'ls deixo aquí: send-email.py

Per usar-lo és molt simple, obrin una terminal, en ella escriguin el següent i pressionin [Entrar]:

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

Els deixo el com seria el procés:

% CODE1%

Un cop fet això, han de editar l'script per posar-li les dades pròpies de vostès, jo ho editaré posant les meves dades, és a dir, les dades d'aquí la meva feina.

Obrin l'script (send-email.py) i canviïn aquestes dades:

  • el teu-email@desdelinux.net per el teu email (en aquest exemple - » kzkggaara@ipichcb.rimed.cu)
  • Cos de l'Missatge pel contingut de l'email (en aquest exemple - » Aquest és un correu electrònic de prova)
  • tu.mailserver.cu pel seu servidor de correu (en aquest exemple - » 192.168.1.2)
  • el teu-mail pel teu usuari (en aquest exemple - » kzkggaara)
  • el teu-password pel teu password (en aquest exemple - » JAJA ... sí ... clar ... LOL)

Em queda de la següent manera: send-email.py (Modificat)

I ja està, ja només queda enviar l'email ... per això posarem el següent:

  • python send-email.py «Aquí posem l'assumpte» destinatario@dominio.com

O sigui, hem d'executar l'script i passar-li el paràmetre «Assumpte» (o sigui, l'assumpte que portarà l'email) ia més a qui (adreça email) se li enviarà.

Em enviaré jo mateix un correu, aquí els deixo l'exemple:

% CODE2%

I ja 😀

Com veuen, una cosa bastant simple ... però ens pot ajudar en determinades ocasions 😉

Salutacions


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   jondarlek va dir

    és molt bo .. però vull alguna cosa com això que funcioni per a windows però no el trobo 🙁

    1.    KZKG ^ Gaara va dir

      Per a Windows ... mmm ... has d'instal·lar Python en Windows amic: http://www.python.org/getit/windows/

    2.    Joan va dir

      per a windows hi ha una eina que es diu Cobian, és molt bona i intuïtiva

  2.   carlos t. va dir

    com aptar l'script perquè envie amb gmail (smtp)?

    1.    elwuilmer va dir

      Tinc de la mateixa manera el mateix dubte: /

      Jo ho vaig poder:

      s = SMTP ( 'smtp.gmail.com')
      s.starttls () # Si fas servir TLS
      s.ehlo ()

      No obstant això em dóna aquest error:

      python send-email.py "Aquí posem l'assumpte" aquimi@correu.com
      Traceback (última trucada més recent):
      File «send-email.py», line 14, in
      s = SMTP ( 'smtp.gmail.com')
      File "/usr/lib/python2.6/smtplib.py", line 239, in __init__
      (Code, msg) = self.connect (host, port)
      File "/usr/lib/python2.6/smtplib.py", line 295, in connect
      self.sock = self._get_socket (host, port, self.timeout)
      File "/usr/lib/python2.6/smtplib.py", line 273, in _get_socket
      return socket.create_connection ((port, host), timeout)
      File "/usr/lib/python2.6/socket.py", line 561, in create_connection
      raise error, msg
      socket.error: [errno 101] La xarxa és inaccessible

  3.   Reedyseth va dir

    Aquesta bo, i ja després ho programes amb cron i llest per retre informes: D.

    1.    KZKG ^ Gaara va dir

      Sí! jeje, estalvia munt de temps automatitzar les coses amb scripts 🙂

  4.   Luweeds va dir

    Gràcies pel post¡¡, em resulta interessant i afegint la funcionalitat que Reedyseth cita té una utilitat més ,. 😉 salutacions compas¡¡

    1.    KZKG ^ Gaara va dir

      Gràcies a tu pel comentari 😀
      Salutacions amic.

  5.   Neo61 va dir

    Gaara, el meu amic, estic segur que aquest article està molt bo com destaquen tots aquí però JO - NO -PUE-DO-VEURE-LES-I-JEM-PLOS-PER-MI-MAL-DI-TA-CO-NEC- CION
    QUE FAIG PER VEURE'LS, EM CURT LA GOLA?

    1.    KZKG ^ Gaara va dir

      No pots obrir aquest link? - » http://paste.desdelinux.net/89

  6.   Neo61 va dir

    Déjame preguntar alguna cosa, es podria fer un script perquè un dia determinat pugui enviar un missatge en específic a tots els usuaris del meu centre? M'imagino que s, i però tu ets l'especialista i de confirmar això, podries ajudar-me a fer un?

    1.    KZKG ^ Gaara va dir

      Sí, per fer «alguna cosa» un dia determinat has de fer servir crontab.
      Després, suposant que vulguis enviar un arxiu .PDF (per exemple, nota.pdf) als teus usuaris, per enviar a 1 sol email seria:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      Ara, per enviar això però no només a una direcció, sinó a moltes més ... necessitaries tenir en un arxiu de text les adreces (separades per un salt de línia), i aleshores utilitzar un cicle for. Per exemple, si tens en direcciones.txt els emails, seria:

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

  7.   David Vela va dir

    Gràcies col·lega, l'script funciona genial.

  8.   Franco va dir

    Dond aquesta l'script si em poden ajudar

  9.   Areli va dir

    Poden de favor compartir els exemples ????