Hvordan sende e-post fra terminalen ved hjelp av et skript

Av X- eller Y-grunner, noen ganger trenger vi å programmere serveren til selskapet vårt for å utføre en bestemt oppgave, og vi vil vite om denne oppgaven ble utført uten problemer, for dette programmerer vi at hvis alt gikk greit, varsl oss ... men ... ¿Hvordan kan serveren varsle oss?

Veldig enkelt, vi vil fortelle deg det gjennom et skript Python at du sender oss en e-post, på denne måten når vi sjekker postkassen, vil vi lese om serveren ikke hadde problemer med å bestille.

Manuset forlot dem her: send-e-post.py

Å bruke det er veldig enkelt, åpne en terminal, i den skriver du følgende og trykker på [Tast inn]:

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

Jeg forlater deg hvordan prosessen ville være:

% KODE1%

 

Når dette er gjort, må du redigere skriptet for å sette dine egne data, jeg vil redigere det ved å sette dataene mine, det vil si dataene herfra mitt arbeid.

Åpne skriptet (send-email.py) og endre denne informasjonen:

  • your-email@desdelinux.net via e-posten din (i dette eksemplet - » kzkggaara@ipichcb.rimed.cu)
  • Meldingslegeme av innholdet i e-posten (i dette eksemplet - » Dette er en test-e-post)
  • you.mailserver.cu av e-postserveren din (i dette eksemplet - » 192.168.1.2)
  • din epost av brukeren din (i dette eksemplet - » kzkggaara)
  • ditt passord for passordet ditt (i dette eksemplet - » HAHA ... ja ... sikkert ... LOL)

Det ser ut som følgende: send-email.py (modifisert)

Og voila, det gjenstår bare å sende e-posten ... for dette vil vi sette følgende:

  • python send-email.py "Her setter vi emnet" mottaker@domene.com

Det vil si at vi må utføre skriptet og sende parameteren "Emne" (det vil si emnet som e-postmeldingen vil ta) og også til hvem (e-postadresse) den vil bli sendt.

Jeg vil sende meg en e-post, her er eksemplet:

% KODE2%

 

Og nå 😀

Som du kan se, noe ganske enkelt ... men det kan hjelpe oss ved visse anledninger 😉

Hilsen


Innholdet i artikkelen følger våre prinsipper for redaksjonell etikk. Klikk på for å rapportere en feil her.

16 kommentarer, legg igjen dine

Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   jondarlek sa

    det er veldig bra .. men jeg vil ha noe slikt som fungerer for windows, men jeg finner det ikke 🙁

    1.    KZKG ^ Gaara sa

      For Windows ... mmm ... må du installere Python på Windows-venn: http://www.python.org/getit/windows/

    2.    John sa

      for windows er det et verktøy som heter Cobian, det er veldig bra og intuitivt

  2.   Carlos T. sa

    hvordan aktiverer man skriptet med gmail (smtp)?

    1.    elwuilmer sa

      Jeg har det samme spørsmålet: /

      Jeg kunne:

      s = SMTP ('smtp.gmail.com')
      s.starttls () # Hvis du bruker TLS
      s.ehlo ()

      Men det gir meg denne feilen:

      python send-email.py "Her setter vi emnet" aquimi@correo.com
      Sporing (siste samtale sist):
      Fil "send-email.py", linje 14, i
      s = SMTP ('smtp.gmail.com')
      Fil "/usr/lib/python2.6/smtplib.py", linje 239, i __init__
      (kode, msg) = self.connect (vert, port)
      Fil "/usr/lib/python2.6/smtplib.py", linje 295, i tilkobling
      self.sock = self._get_socket (vert, port, self.timeout)
      Fil "/usr/lib/python2.6/smtplib.py", linje 273, i _get_socket
      return socket.create_connection ((port, host), timeout)
      Fil "/usr/lib/python2.6/socket.py", linje 561, i create_connection
      heve feil, msg
      socket.error: [Errno 101] Nettverket er utilgjengelig

  3.   reedyseth sa

    Det er bra, og så programmerer du det med cron og klar til å rapportere: D.

    1.    KZKG ^ Gaara sa

      Ja! hehe, spar mye tid på å automatisere ting med scipts 🙂

  4.   Luweeds sa

    Takk for innlegget, jeg synes det er interessant og å legge til funksjonaliteten som Reedyseth siterer, har ett nytt verktøy. 😉 hilsen kompas!

    1.    KZKG ^ Gaara sa

      Takk til deg for kommentaren 😀
      Hilsen venn.

  5.   Neo61 sa

    Gaara, min venn, jeg er sikker på at denne artikkelen er veldig bra da alle her skiller seg ut, men jeg - NO -PUE-DO-SE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO- NEC- TION
    HVA GJØR JEG FOR Å SE DEM, KUTTE I HALSEN?

    1.    KZKG ^ Gaara sa

      Kan ikke åpne denne lenken? - » http://paste.desdelinux.net/89

  6.   Neo61 sa

    La meg spørre deg om noe, kan du lage et skript slik at jeg en bestemt dag kan sende en spesifikk melding til alle brukere av mitt senter? Jeg forestiller meg det, men du er spesialisten, og hvis du bekrefter dette, kan du hjelpe meg med å lage en?

    1.    KZKG ^ Gaara sa

      Ja, for å gjøre "noe" på en gitt dag må du bruke crontab.
      Forutsatt at du vil sende en .PDF-fil (for eksempel note.pdf) til brukerne, vil du sende til bare 1 e-post være:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      For å sende det, men ikke bare til en adresse, men til mange flere ... må du ha adressene i en tekstfil (atskilt med et linjeskift), og deretter bruke en sløyfe forum. Hvis du for eksempel har e-postene i adresser.txt, vil det være:

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

  7.   David lys sa

    Takk kompis, manuset fungerer bra.

  8.   Frank sa

    Hvor er manuset hvis du kan hjelpe meg

  9.   Areli sa

    Kan du vennligst dele eksemplene ????