Cron作业不运行,但在shell上手动运行时命令正常

时间:2017-10-27 07:49:28

标签: shell cron scrapy

我的crontab中有以下条目:

0,30 7-18 * * 1-5 cd /path/to/scrapers && scrapy crawl funny_quotes  &>> $(date "+/home/foobar/logs/\%Y\%m\%d.funny.log"

此条目应该在工作日每隔半小时运行一次,并在每次运行时将输出附加到日志文件中。我已使用structure在线测试了语法,语法正确。

但是,这项工作没有运行。更糟糕的是,日志文件已创建(但没有内容 - 文件大小为0),因此我没有诊断信息可供使用。

当我在命令中输入命令时,cd /path/to/scrapers && scrapy crawl funny_quotes命令运行完美,并且从scrapy输出大量信息到控制台。

为什么cronjob无法正常运行 - 为什么没有任何东西被传送到日志文件?

1 个答案:

答案 0 :(得分:0)

检查你的cron日志

grep CRON /var/log/syslog

我确定您收到类似scrapy - command not found或类似内容的错误。

要解决此问题,请执行此操作

从shell输入并复制echo $PATH的输出。

然后打开crontab -e

在文件的最顶部,写下PATH=YOUR_COPIED_CONTENTS

这应该有用。