Come inviare posta dal terminale utilizzando uno script

Per motivi X o Y, a volte abbiamo bisogno di programmare il server della nostra azienda per eseguire una determinata attività, e vogliamo sapere se questa attività è stata eseguita senza problemi, per questo programmiamo che se tutto è andato per il verso giusto, avvisaci ... ma ... ¿ Come può avvisarci il server?

Molto semplice, te lo diremo attraverso uno script Python Inviaci una mail, in questo modo quando controlliamo la casella di posta, leggeremo se il server non ha avuto problemi a effettuare l'ordine.

Lo script li ha lasciati qui: invia-email.py

Per usarlo è molto semplice, apri un terminale, in esso scrivi quanto segue e premi [Accedere]:

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

Vi lascio come sarebbe il processo:

% CODE1%

Fatto ciò, è necessario modificare lo script per inserire i propri dati, io lo modificherò inserendo i miei dati, cioè i dati da qui il mio lavoro.

Apri lo script (send-email.py) e modifica questi dati:

  • la tua email@desdelinux.net tramite la tua email (in questo esempio - » kzkggaara@ipichcb.rimed.cu)
  • Corpo del messaggio dal contenuto dell'e-mail (in questo esempio - » Questa è un'e-mail di prova)
  • you.mailserver.cu dal tuo server di posta (in questo esempio - » 192.168.1.2)
  • la tua email dal tuo utente (in questo esempio - » kzkggaara)
  • la tua password per la tua password (in questo esempio - » HAHA ... sì ... certo ... LOL)

Sembra il seguente: send-email.py (Modificato)

E voilà, non resta che inviare l'email ... per questo metteremo quanto segue:

  • python send-email.py "Qui mettiamo l'oggetto" recipient@domain.com

Cioè, dobbiamo eseguire lo script e passare il parametro "Oggetto" (cioè l'oggetto che prenderà l'email) e anche a chi (indirizzo email) verrà inviato.

Mi mando una mail, ecco l'esempio:

% CODE2%

E ora 😀

Come puoi vedere, qualcosa di abbastanza semplice ... ma può aiutarci in certe occasioni 😉

saluti


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.

  1.   giondarlek suddetto

    è molto buono .. ma voglio qualcosa di simile che funzioni per Windows ma non riesco a trovarlo 🙁

    1.    KZKG ^ Gaara suddetto

      Per Windows ... mmm ... devi installare Python su Windows amico: http://www.python.org/getit/windows/

    2.    Giovanni suddetto

      per Windows esiste uno strumento chiamato Cobian, è molto buono e intuitivo

  2.   Carlos T. suddetto

    come abilitare lo script da inviare con gmail (smtp)?

    1.    Elwuilmer suddetto

      Ho la stessa domanda: /

      Potrei:

      s = SMTP ("smtp.gmail.com")
      s.starttls () # Se usi TLS
      s.ehlo ()

      Tuttavia mi dà questo errore:

      python send-email.py "Qui mettiamo l'oggetto" aquimi@correo.com
      Traceback (ultima chiamata più recente):
      File "send-email.py", riga 14, in
      s = SMTP ("smtp.gmail.com")
      File "/usr/lib/python2.6/smtplib.py", riga 239, in __init__
      (codice, msg) = self.connect (host, porta)
      File "/usr/lib/python2.6/smtplib.py", riga 295, in connessione
      self.sock = self._get_socket (host, porta, self.timeout)
      File "/usr/lib/python2.6/smtplib.py", riga 273, in _get_socket
      return socket.create_connection ((port, host), timeout)
      File "/usr/lib/python2.6/socket.py", riga 561, in create_connection
      solleva errore, msg
      socket.error: [Errno 101] La rete non è raggiungibile

  3.   reedyseth suddetto

    Va bene, quindi lo programmi con cron e pronto a segnalare: D.

    1.    KZKG ^ Gaara suddetto

      Sì! hehe, risparmia un sacco di tempo automatizzando le cose con scipts 🙂

  4.   Luweed suddetto

    Grazie per il post, lo trovo interessante e l'aggiunta della funzionalità citata da Reedyseth ha un'utilità in più. 😉 saluti compas!

    1.    KZKG ^ Gaara suddetto

      Grazie anche a te per il commento 😀
      Saluti amico.

  5.   Neo61 suddetto

    Gaara, amico mio, sono sicuro che questo articolo è molto buono in quanto tutti qui si distinguono ma io - NO -PUE-DO-SEE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO- NECESSITÀ
    COSA FACCIO PER VEDERLI, TAGLIARMI LA GOLA?

    1.    KZKG ^ Gaara suddetto

      Non riesci ad aprire questo link? - » http://paste.desdelinux.net/89

  6.   Neo61 suddetto

    Lascia che ti chieda una cosa, posso fare uno script in modo che in un certo giorno possa inviare un messaggio specifico a tutti gli utenti del mio centro? Credo di sì, ma tu sei lo specialista e se lo confermi, potresti aiutarmi a realizzarne uno?

    1.    KZKG ^ Gaara suddetto

      Sì, per fare "qualcosa" in un dato giorno devi usare crontab.
      Quindi, supponendo che tu voglia inviare un file .PDF (ad esempio, note.pdf) ai tuoi utenti, da inviare a solo 1 email sarebbe:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      Ora, per inviarlo ma non solo a un indirizzo, ma a molti altri ... avresti bisogno di avere gli indirizzi in un file di testo (separati da un'interruzione di riga), quindi utilizzare un ciclo per. Ad esempio, se hai le email in address.txt, sarebbe:

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

  7.   Candela David suddetto

    Grazie amico, la sceneggiatura funziona alla grande.

  8.   Frank suddetto

    Dov'è il copione se puoi aiutarmi

  9.   Areli suddetto

    Puoi condividere gli esempi ????