我有一个Python脚本,我正在尝试编写一个crontab,并将Python脚本的输出输出到一个文件,然后将该输出发送到一个电子邮件地址(到电子邮件的正文而不是标题)指定的。我的系统详细信息和crontab条目如下:
System details:
Python: 2.7
OSX : 10.11
host$ crontab -l
11 11 13 10 4 2016 python pythonscript.py >> weekly.log | mail -s weekly.log myemail@.com
虽然当crontab执行时,电子邮件会向我发送一封电子邮件,主题行为“weekly.log”,没有正文。
我还尝试了以下设置的crontab:
07 22 13 10 4 2016 /root/python/osversion_weekly.py | tee /root/python/osversion`date +\%Y-\%m-\%d-\%H:\%M:\%S`-cron.log | mailx -s "OSLEVEL Report" mymail@server.com
虽然我只收到一封标题为“OSLEVEL Report”的电子邮件,内容为空
更新: 我似乎从/ var / log / cron得到的错误显示“orphan no passwd entry”。不太清楚什么意思,我没有在网上看到任何答案来解决这个问题......
答案 0 :(得分:0)
>>
使python输出附加到文件weekly.log
,之后没有输入被推送到mail
。
您可以删除>> weekly.log
并且没有日志文件或使用管道中的程序tee
。 tee
写入标准输出和文件。
像这样:
python pythonscript.py | tee -a weekly.log | mail -s weekly.log myemail@.com