Cronjob运行通过sSMTP发送电子邮件的python脚本?

时间:2013-06-13 03:18:12

标签: python crontab ssmtp

所以,我写了一个非常小的python脚本,只要它检测到一个超过0字节的文件就运行一个系统命令。试图安排一个cronjob来运行它,但无论出于什么原因它都不起作用 - 我做错了什么?

Python脚本(/usr/local/bin/urlEmail.py):

#!/usr/bin/env python
import os

changes = os.stat("/usr/local/bin/changes.txt")
if changes.st_size > 0:
    os.system('ssmtp email@email.com < changes.txt')

(现在,changes.txt是静态的,只有我的测试中有一些文本)

在root用户上添加到crontable -e:

*/1 * * * * urlEmail.py

如果我查看/ var / log / syslog,我会看到:

Jun 13 07:09:01 Server CRON[20901]: (root) CMD (urlEmail.py)
Jun 13 07:09:02 Server sSMTP[20902]: Sent mail for root@email.com  (221 domain.domain.com closing connection) uid=0 username=root outbytes=577

另外,只是运行'urlEmail.py',我收到了我期望的电子邮件,但是,日志消息是:

Jun 13 07:17:07 Server sSMTP[20952]: Sent mail for root@email.com (221 domain.domain.com closing connection) uid=0 username=root outbytes=352

两条日志消息之间唯一发生变化的事实是,在我自己运行'urlEmail.py'的情况下,outbytes值不同。

当cron运行时(每分钟一次)我根本没有收到任何电子邮件。

0 个答案:

没有答案