วิธีส่งเมลจากเทอร์มินัลโดยใช้สคริปต์

ด้วยเหตุผล X หรือ Y บางครั้งเราจำเป็นต้องตั้งโปรแกรมเซิร์ฟเวอร์ของ บริษัท ของเราเพื่อทำงานบางอย่างและเราต้องการทราบว่างานนี้ดำเนินการโดยไม่มีปัญหาหรือไม่สำหรับสิ่งนี้เราตั้งโปรแกรมว่าหากทุกอย่างราบรื่นโปรดแจ้งให้เราทราบ ... แต่ ... but เซิร์ฟเวอร์จะแจ้งให้เราทราบได้อย่างไร?

ง่ายมากเราจะบอกคุณผ่านสคริปต์ หลาม ที่คุณส่งอีเมลถึงเราด้วยวิธีนี้เมื่อเราตรวจสอบกล่องจดหมายเราจะอ่านว่าเซิร์ฟเวอร์ไม่มีปัญหาในการสั่งซื้อหรือไม่

สคริปต์ทิ้งไว้ที่นี่: send-email.py

ในการใช้งานนั้นง่ายมากให้เปิดเทอร์มินัลในนั้นเขียนสิ่งต่อไปนี้แล้วกด [ป้อน]:

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

ฉันฝากคุณไว้ว่ากระบวนการจะเป็นอย่างไร:

% CODE1%

เมื่อเสร็จแล้วคุณต้องแก้ไขสคริปต์เพื่อใส่ข้อมูลของคุณเองฉันจะแก้ไขโดยใส่ข้อมูลของฉันนั่นคือข้อมูลจากที่นี่งานของฉัน

เปิดสคริปต์ (send-email.py) และเปลี่ยนแปลงข้อมูลนี้:

  • อีเมลของคุณ@desdelinuxสุทธิ. ทางอีเมลของคุณ (ในตัวอย่างนี้ - » kzkggaara@ipichcb.rimed.cu)
  • เนื้อหาข้อความ ตามเนื้อหาของอีเมล (ในตัวอย่างนี้ - » นี่คืออีเมลทดสอบ)
  • you.mailserver.cu โดยเซิร์ฟเวอร์อีเมลของคุณ (ในตัวอย่างนี้ - » 192.168.1.2)
  • อีเมลของคุณ โดยผู้ใช้ของคุณ (ในตัวอย่างนี้ - » คิคิกาอารา)
  • รหัสผ่านของคุณ สำหรับรหัสผ่านของคุณ (ในตัวอย่างนี้ - » ฮ่าฮ่า…ใช่…แน่นอน…ฮ่า ๆ)

ดูเหมือนว่าต่อไปนี้: send-email.py (แก้ไข)

และ voila ก็ยังคงส่งอีเมลเท่านั้น ... สำหรับสิ่งนี้เราจะใส่สิ่งต่อไปนี้:

  • python send-email.py "ที่นี่เราใส่หัวเรื่อง" receiver@domain.com

นั่นคือเราต้องดำเนินการสคริปต์และส่งผ่านพารามิเตอร์ "Subject" (นั่นคือหัวเรื่องที่อีเมลจะใช้) และจะส่งไปยังใคร (ที่อยู่อีเมล)

ฉันจะส่งอีเมลถึงตัวเองนี่คือตัวอย่าง:

% CODE2%

และตอนนี้😀

อย่างที่คุณเห็นสิ่งที่ค่อนข้างเรียบง่าย ... แต่สามารถช่วยเราได้ในบางโอกาส😉

ความนับถือ


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   จอนดาร์เลค dijo

    มันดีมาก .. แต่ฉันอยากได้ของแบบนี้ที่ใช้ได้กับ windows แต่หาไม่เจอ🙁

    1.    KZKG ^ กาอาระ dijo

      สำหรับ Windows ... mmm ... คุณต้องติดตั้ง Python บน Windows friend: http://www.python.org/getit/windows/

    2.    จอห์น dijo

      สำหรับ windows มีเครื่องมือที่เรียกว่า Cobian ซึ่งดีมากและใช้งานง่าย

  2.   คาร์ลอส T. dijo

    วิธีเปิดใช้งานสคริปต์เพื่อส่งด้วย gmail (smtp)?

    1.    เอลวิลเมอร์ dijo

      ฉันมีคำถามเดียวกัน: /

      ฉันสามารถ:

      s = SMTP ('smtp.gmail.com')
      s.starttls () # หากคุณใช้ TLS
      s.ehlo ()

      อย่างไรก็ตามมันทำให้ฉันมีข้อผิดพลาดนี้:

      python send-email.py "ที่นี่เราใส่หัวเรื่อง" aquimi@correo.com
      Traceback (โทรล่าสุดล่าสุด):
      ไฟล์ "send-email.py" บรรทัด 14 นิ้ว
      s = SMTP ('smtp.gmail.com')
      ไฟล์ "/usr/lib/python2.6/smtplib.py" บรรทัด 239 ใน __init__
      (code, msg) = self.connect (โฮสต์, พอร์ต)
      ไฟล์ "/usr/lib/python2.6/smtplib.py" บรรทัด 295 ในการเชื่อมต่อ
      self.sock = self._get_socket (โฮสต์พอร์ต self.timeout)
      ไฟล์ "/usr/lib/python2.6/smtplib.py" บรรทัด 273 ใน _get_socket
      ส่งคืน socket.create_connection ((พอร์ตโฮสต์) หมดเวลา)
      ไฟล์ "/usr/lib/python2.6/socket.py" บรรทัด 561 ใน create_connection
      เพิ่มข้อผิดพลาด msg
      socket.error: [Errno 101] ไม่สามารถเข้าถึงเครือข่ายได้

  3.   reedyseth dijo

    ดีแล้วคุณตั้งโปรแกรมด้วย cron และพร้อมที่จะรายงาน: D.

    1.    KZKG ^ กาอาระ dijo

      ใช่ ฮิฮิประหยัดเวลาได้มากทำให้สิ่งต่างๆเป็นอัตโนมัติด้วย scipts 🙂

  4.   ลูวีดส์ dijo

    ขอบคุณสำหรับโพสต์ฉันคิดว่ามันน่าสนใจและการเพิ่มฟังก์ชันที่ Reedyseth อ้างถึงมียูทิลิตี้อีกหนึ่งอย่าง 😉ทักทาย compas!

    1.    KZKG ^ กาอาระ dijo

      ขอบคุณสำหรับความคิดเห็น😀
      ทักทายเพื่อน.

  5.   Neo61 dijo

    กาอาระเพื่อนของฉันฉันแน่ใจว่าบทความนี้ดีมากเพราะทุกคนที่นี่เน้น แต่ฉัน - NO-PUE-DO-SE-LOS-E-JEM-PLOS-POR-MI-MAL-DI-TA-CO-NEC- TION
    ฉันจะทำอย่างไรเพื่อดูพวกเขาตัดคอของฉัน

    1.    KZKG ^ กาอาระ dijo

      ไม่สามารถเปิดลิงค์นี้? - » http://paste.desdelinux.net/89

  6.   Neo61 dijo

    ให้ฉันถามคุณบางอย่างฉันสามารถสร้างสคริปต์เพื่อที่ในวันหนึ่งฉันสามารถส่งข้อความเฉพาะไปยังผู้ใช้ทั้งหมดในศูนย์ของฉันได้หรือไม่ ฉันคิดอย่างนั้น แต่คุณเป็นผู้เชี่ยวชาญและถ้าคุณยืนยันสิ่งนี้คุณช่วยฉันสร้างขึ้นมาได้ไหม

    1.    KZKG ^ กาอาระ dijo

      ใช่เพื่อทำ "บางสิ่ง" ในวันที่กำหนดคุณต้องใช้ crontab.
      จากนั้นสมมติว่าคุณต้องการส่งไฟล์. PDF (ตัวอย่างเช่น note.pdf) ไปยังผู้ใช้ของคุณเพื่อส่งไปยังอีเมลเพียง 1 ฉบับจะเป็น:
      mail -s "Este es el asunto del correo" direccionemail@loquesea.cu < nota.pdf

      ตอนนี้ในการส่งสิ่งนั้น แต่ไม่ใช่แค่ไปยังที่อยู่เดียว แต่ไปยังอีกมากมาย ... คุณจะต้องมีที่อยู่ในไฟล์ข้อความ (คั่นด้วยตัวแบ่งบรรทัด) จากนั้นใช้ลูป for . ตัวอย่างเช่นหากคุณมีอีเมลใน address.txt มันจะเป็น:

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

  7.   เดวิดเทียน dijo

    ขอบคุณเพื่อนสคริปต์ใช้งานได้ดี

  8.   ตรงไปตรงมา dijo

    สคริปต์อยู่ที่ไหนถ้าคุณสามารถช่วยฉัน

  9.   Areli dijo

    คุณช่วยแบ่งปันตัวอย่างได้ไหม ????