让cronjob在Ubuntu中工作

时间:2016-12-06 21:12:39

标签: linux cron ubuntu-14.04

我正在尝试创建一个cronjob,我已经遵循了多个教程并搜索了Stackoverflow,但我认为我正在做一个错误,因为它不起作用。

在Ubuntu 14下,这是我的用户帐户Cronjob文件

* 16 * * * cd work/homefolder/homefolder && scrapy crawl scrape1

使用:

grep CRON /var/log/syslog

我可以看到cron作业已运行但它不执行命令。我也 看不出有什么问题。

只需在终端输入

即可
cd
cd work/homefolder/homefolder && scrapy crawl scrape1

该文件夹的完整路径是

/home/NAMEOFUSER/work/homefolder/homefolder

有人知道它为什么不起作用或我在哪里可以找到出错的地方?

谢谢

1 个答案:

答案 0 :(得分:1)

您需要包含绝对路径,而不是cronjob文件中的相对路径。

尝试* 16 * * * cd /home/NAMEOFUSER/work/homefolder/homefolder && scrapy crawl scrape1

但我宁愿准备好一个脚本来为你完成工作(包括更改目录)并直接调用它:

* 16 * * * /home/NAMEOFUSER/work/homefolder/homefolder/scrape.sh

scrape.sh的内容可能如下所示:

!#/bin/sh
cd /home/NAMEOFUSER/work/homefolder/homefolder && scrapy crawl scrape1

请务必更新您的权限,以便cron恶魔可以访问。

此外,在Ubuntu上编辑cronjobs的首选方法是运行crontab -e