Как отправить по электронной почте вложение выходного файла сценария оболочки через сценарий Python, используя cron автоматически? - PullRequest
0 голосов
/ 04 октября 2018

У меня есть 2 сценария (1 - это сценарий оболочки, а 1 - сценарий python для отправки электронного письма).Теперь я хочу отправить вывод вложения файла через python автоматически, используя cron ...

1 Ответ

0 голосов
/ 04 октября 2018

Это один из способов python для отправки электронной почты:

#!/usr/bin/python
from subprocess import Popen, PIPE
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import os
import smtplib

############ File comparison & sendmail part starts here ########
def ps_Mail():
    filename = "/tmp/ps_msg"  # this is your file path you want to sent
    filename = open(filename)
    if os.path.exists(filename) and os.path.getsize(filename) > 0:
        mailp = Popen(["/usr/sbin/sendmail", "-t", "-oi"], stdin=PIPE)
        msg = MIMEMultipart()
        msg['To'] = "user@example.com"
        msg['Subject'] = "My Test E-mail"
        msg['From'] = "some_user@example.com"
        msg1 = MIMEText(filename.read(),  'text')
        msg.attach(msg1)
        mailp.communicate(msg.as_string())
ps_Mail()

О настройке cronjob попробуйте, как показано ниже:

a) если его скрипт оболочки, затем запустите его, как показано ниже.., отредактируйте crontab с -e аргументом

$ crontab -e
*/30 * * * * /home/script/myfile.sh

сохраните файл и вы пообедаете ..

b) если его питон и вы хотите запускать этот скрипт каждый30 минут.

*/30 * * * * /usr/bin/python script.py
...