禁用Cron日志文件的方法但是仍然通过电子邮件发送脚本输出?

时间:2017-07-28 19:01:57

标签: php email cron

现在我的cron作业正在运行,但每次运行时都会创建一个新的日志文件,这既荒谬又不必要。我想要的是一个NO日志文件(我永远不会检查它们,我也不想进入并清理它们)。如果我将其设置为发送电子邮件,它只会发送一封电子邮件说它运行正常,并且脚本的输出包含在日志文件中。

但是 - 我需要查看它执行的PHP脚本的输出,因为它包含成功/失败信息,并且将来可能是一个列表。如果必须,我可以让PHP脚本发送电子邮件而不是CRON作业,但CRON是否可以发送包含脚本输出的电子邮件,但是不创建日志文件?

使用此命令我已禁用电子邮件,但每次运行时仍会创建一个包含脚本输出的新日志文件:

wget *webaddress*/generate_late_fees.php >/dev/null 2>&1

1 个答案:

答案 0 :(得分:0)

在共享主机中,您通常无法控制syslog和cron守护程序,因此无法关闭该cronjob的日志记录。

只需在脚本中填写电子邮件内容,并且不要依赖于crond的自动输出到电子邮件转发。 另一种选择是使用mail命令从控制台执行电子邮件。只需将wget的输出传递给mail命令。

wget *webaddress*/generate_late_fees.php | mail -s "this is the subject" "to@address" >/dev/null 2>&1