Ako odosielať poštu z terminálu pomocou skriptu

Z dôvodov X alebo Y niekedy musíme naprogramovať server našej spoločnosti na vykonanie určitej úlohy a chceme vedieť, či bola táto úloha vykonaná bez problémov, preto programujeme, že ak všetko prebehlo bez problémov, oznámte nám to ... ale ... ¿Ako môže nás server upozorniť?

Veľmi jednoduché, povieme vám to pomocou skriptu Pytón že nám pošlete e-mail, týmto spôsobom pri kontrole poštovej schránky prečítame, či server nemal problémy s objednávkou.

Skript ich nechal tu: send-email.py

Jeho použitie je veľmi jednoduché, otvorte terminál, napíšte doň nasledujúci text a stlačte [vstúpiť]:

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

Nechám vás, aký by bol proces:

% CODE1%

Akonáhle je to hotové, musíte upraviť skript, aby ste vložili svoje vlastné údaje, ja ho upravím vložením mojich údajov, teda údajov odtiaľto, mojej práce.

Otvorte skript (send-email.py) a zmeňte tieto údaje:

  • tvoj email@desdelinux.net e-mailom (v tomto príklade - » kzkggaara@ipichcb.rimed.cu)
  • Telo správy podľa obsahu e-mailu (v tomto príklade - » Toto je testovací e-mail)
  • you.mailserver.cu poštovým serverom (v tomto príklade) - » 192.168.1.2)
  • tvoj email používateľom (v tomto príklade - » Kzkggaara.)
  • tvoje heslo pre vaše heslo (v tomto príklade - » HAHA ... áno ... určite ... LOL)

Vyzerá to takto: send-email.py (upravené)

A voila, zostáva už len poslať e-mail ... k tomu vložíme nasledovné:

  • python send-email.py "Sem vložíme predmet" recipient@domain.com

To znamená, že musíme spustiť skript a odovzdať parameter „Subjekt“ (teda subjekt, ktorý bude mať e-mail) a tiež komu (e-mailovej adrese) bude odoslaný.

Pošlem si e-mail, tu je príklad:

% CODE2%

A teraz 😀

Ako vidíte, niečo celkom jednoduché ... ale pri určitých príležitostiach nám to môže pomôcť 😉

pozdravy


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.

  1.   jondarlek dijo

    je to veľmi dobré .. ale chcem niečo také, čo funguje pre Windows, ale nemôžem to nájsť 🙁

    1.    KZKG ^ Gaara dijo

      Pre Windows ... mmm ... musíte nainštalovať Python na priateľa Windows: http://www.python.org/getit/windows/

    2.    john dijo

      pre Windows existuje nástroj s názvom Cobian, je to veľmi dobré a intuitívne

  2.   Carlos T. dijo

    Ako povoliť odoslanie skriptu pomocou služby Gmail (SMTP)?

    1.    elwuilmer dijo

      Mám tú istú otázku: /

      Mohol som:

      s = SMTP ('smtp.gmail.com')
      s.starttls () # Ak používate TLS
      s.ehlo ()

      Dáva mi však túto chybu:

      python send-email.py "Sem vložíme predmet" aquimi@correo.com
      Traceback (posledný posledný hovor):
      Súbor „send-email.py“, riadok 14, v
      s = SMTP ('smtp.gmail.com')
      Súbor „/usr/lib/python2.6/smtplib.py“, riadok 239, v __init__
      (kód, správa) = self.connect (hostiteľ, port)
      Súbor "/usr/lib/python2.6/smtplib.py", riadok 295, v pripojení
      self.sock = self._get_socket (hostiteľ, port, self.timeout)
      Súbor "/usr/lib/python2.6/smtplib.py", riadok 273, v _get_socket
      návrat socket.create_connection ((port, hostiteľ), časový limit)
      Súbor "/usr/lib/python2.6/socket.py", riadok 561, v create_connection
      chyba zvýšenia, msg
      socket.error: [Errno 101] Sieť je nedosiahnuteľná

  3.   reedyseth dijo

    Je to dobré, a potom to naprogramujete pomocou cronu a ste pripravený na správu: D.

    1.    KZKG ^ Gaara dijo

      Áno! hehe, ušetri veľa času automatizuj veci scipitmi 🙂

  4.   luweeds dijo

    Ďakujem za príspevok, považujem ho za zaujímavý a pridanie funkcionality, ktorú cituje Reedyseth, má ešte jednu utilitu. 😉 pozdravy kompas!

    1.    KZKG ^ Gaara dijo

      Ďakujem za komentár 😀
      Pozdravujem priateľa.

  5.   Neo61 dijo

    Gaara, môj priateľ, som si istý, že tento článok je veľmi dobrý, ako to tu všetci zdôrazňujú, ale ja - NO-PUE-DO-SE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO-NEC - TION
    ČO ROBÍM, ABY STE ICH ZOBRAZILI, ZARIADILI MI HRDLO?

    1.    KZKG ^ Gaara dijo

      Nemôžete otvoriť tento odkaz? - » http://paste.desdelinux.net/89

  6.   Neo61 dijo

    Dovoľte mi, aby som sa vás niečo spýtal, mohol by som vytvoriť scenár, aby som v určitý deň mohol poslať konkrétnu správu všetkým používateľom môjho centra? Myslím, že áno, ale vy ste špecialista a ak mi to potvrdíte, mohli by ste mi nejaký pomôcť vyrobiť?

    1.    KZKG ^ Gaara dijo

      Áno, musíte robiť „niečo“ v daný deň crontab.
      Potom, za predpokladu, že chcete poslať súbor .PDF (napríklad note.pdf) svojim používateľom, poslať iba na 1 e-mail by bolo:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      Teraz, aby ste to poslali, ale nielen na jednu adresu, ale na oveľa viac ... budete musieť mať adresy v textovom súbore (oddelené zlomom riadku), a potom použiť slučku pre. Napríklad, ak máte e-mailové adresy v addresses.txt, bude to:

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

  7.   Dávidova sviečka dijo

    Ďakujem kámo, scenár funguje výborne.

  8.   úprimný dijo

    Kde je scenár, ak mi môžete pomôcť

  9.   arel dijo

    Môžete prosím zdieľať príklady ????