Kuinka lähettää sähköpostia terminaalista komentosarjan avulla

X- tai Y-syistä meidän on joskus ohjelmoitava yrityksemme palvelin suorittamaan tietty tehtävä, ja haluamme tietää, suoritettiinko tämä tehtävä ongelmitta. Tätä varten ohjelmoimme, että jos kaikki sujui, ilmoita siitä meille ... Kuinka palvelin voi ilmoittaa meille?

Hyvin yksinkertainen, kerromme sinulle komentosarjan kautta Python lähettää meille sähköpostia tällä tavalla, kun tarkistamme postilaatikon, luemme, jos palvelimella ei ole ongelmia tilauksen tekemisessä.

Käsikirjoitus jätti heidät tänne: send-email.py

Käyttääksesi sitä on hyvin yksinkertaista, avaa pääte, kirjoita siihen seuraava ja paina [Tulla sisään]:

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

Jätän teille, miten prosessi olisi:

% CODE1%

Kun tämä on tehty, sinun on muokattava komentosarjaa, jotta voit lisätä omat tietosi, minä muokkaan sitä laittamalla tietoni, ts. Tiedot työstäni.

Avaa komentosarja (send-email.py) ja muuta nämä tiedot:

  • sähköpostisi@desdelinux. Net sähköpostilla (tässä esimerkissä - » kzkggaara@ipichcb.rimed.cu)
  • Viestin runko sähköpostin sisällön mukaan (tässä esimerkissä - » Tämä on testisähköposti)
  • you.mailserver.cu sähköpostipalvelimesi (tässä esimerkissä - » 192.168.1.2)
  • sähköpostisi käyttäjän (tässä esimerkissä - » kzkggaara)
  • salasanasi salasanallesi (tässä esimerkissä - » HAHA ... joo ... varma ... LOL)

Se näyttää tältä: send-email.py (muokattu)

Ja voila, on vain sähköpostin lähettäminen ... tähän me panemme seuraavan:

  • python send-email.py "Tässä laitetaan aihe" vastaanottaja@verkkotunnus.com

Toisin sanoen meidän on suoritettava komentosarja ja välitettävä parametri "Subject" (eli aihe, jonka sähköposti vie) ja kenelle (sähköpostiosoite) se lähetetään.

Lähetän itselleni sähköpostin, tässä on esimerkki:

% CODE2%

Ja nyt 😀

Kuten näette, jotain melko yksinkertaista ... mutta se voi auttaa meitä tietyissä tilanteissa 😉

terveiset


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   jondarlek dijo

    se on erittäin hyvä .. mutta haluan jotain sellaista, joka toimii Windowsissa, mutta en löydä sitä 🙁

    1.    KZKG ^ Gaara dijo

      Windows ... mmm ... sinun on asennettava Python Windows-ystävälle: http://www.python.org/getit/windows/

    2.    Johannes dijo

      ikkunoille on työkalu nimeltä Cobian, se on erittäin hyvä ja intuitiivinen

  2.   Carlos T. dijo

    miten komentosarja voidaan lähettää gmailin (smtp) avulla?

    1.    elwuilmer dijo

      Minulla on sama kysymys: /

      Voisin:

      s = SMTP ('smtp.gmail.com')
      s.starttls () # Jos käytät TLS: ää
      s.ehlo ()

      Kuitenkin se antaa minulle tämän virheen:

      python send-email.py "Tässä laitetaan aihe" aquimi@correo.com
      Seuranta (viimeisin puhelu viimeisin):
      Tiedosto "send-email.py", rivi 14, sisään
      s = SMTP ('smtp.gmail.com')
      Tiedosto "/usr/lib/python2.6/smtplib.py", rivi 239, __init__
      (koodi, msg) = itse. yhteys (isäntä, portti)
      Tiedosto "/usr/lib/python2.6/smtplib.py", rivi 295, yhteydessä
      self.sock = self._get_socket (isäntä, portti, self.timeout)
      Tiedosto "/usr/lib/python2.6/smtplib.py", rivi 273, _get_socketissa
      return socket.create_connection ((portti, isäntä), aikakatkaisu)
      Tiedosto "/usr/lib/python2.6/socket.py", rivi 561, luomisen_yhteydessä
      nosta virhe, viesti
      socket.error: [Errno 101] Verkkoa ei voida saavuttaa

  3.   reedyseth dijo

    Se on hyvä, ja sitten ohjelmoit sen cronilla ja olet valmis raportoimaan: D.

    1.    KZKG ^ Gaara dijo

      Joo! hehe, säästä paljon aikaa automatisoida asioita komentosarjoilla 🙂

  4.   luweeds dijo

    Kiitos viestistä, minusta on mielenkiintoista ja lisäämällä Reedysethin mainitsemilla toiminnoilla on vielä yksi apuohjelma. 😉 tervehdys kompas!

    1.    KZKG ^ Gaara dijo

      Kiitos kommentista 😀
      Terveisiä ystävä.

  5.   Neo61 dijo

    Gaara, ystäväni, olen varma, että tämä artikkeli on erittäin hyvä, kuten kaikki täällä olevat korostavat, mutta minä - EI-PUE-DO-SE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO-NEC- TION
    MITÄ TEEN NÄKÄÄN NIITÄ, Leikkaa kurkkuni?

    1.    KZKG ^ Gaara dijo

      Etkö voi avata tätä linkkiä? - » http://paste.desdelinux.net/89

  6.   Neo61 dijo

    Haluan kysyä sinulta jotain, voinko tehdä käsikirjoituksen, jotta voin tiettynä päivänä lähettää tietyn viestin kaikille keskukseni käyttäjille? Luulen niin, mutta olet asiantuntija, ja jos vahvistat tämän, voisitko auttaa minua tekemään sellaisen?

    1.    KZKG ^ Gaara dijo

      Kyllä, jotta voit tehdä "jotain" tiettynä päivänä, sinun on käytettävä sitä crontab.
      Sitten olettaen, että haluat lähettää .PDF-tiedoston (esimerkiksi note.pdf) käyttäjillesi, lähettää vain yhteen sähköpostiin:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      Jos haluat lähettää sen, mutta ei vain yhteen osoitteeseen, vaan moniin muihin ... sinun on oltava osoitteet tekstitiedostossa (erotettu rivinvaihdolla) ja sitten käytettävä silmukkaa varten. Esimerkiksi, jos sinulla on sähköpostit osoitteissa address.txt, se olisi:

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

  7.   David-kynttilä dijo

    Kiitos kaveri, käsikirjoitus toimii hyvin.

  8.   Vilpitön dijo

    Missä käsikirjoitus on, jos voit auttaa minua

  9.   Areli dijo

    Voitteko jakaa esimerkit ????