我的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无法正常运行 - 为什么没有任何东西被传送到日志文件?
答案 0 :(得分:0)
检查你的cron日志
grep CRON /var/log/syslog
我确定您收到类似scrapy - command not found
或类似内容的错误。
要解决此问题,请执行此操作
从shell输入并复制echo $PATH
的输出。
然后打开crontab -e
在文件的最顶部,写下PATH=YOUR_COPIED_CONTENTS
这应该有用。