cronjob无法在EC2

时间:2016-10-09 22:56:19

标签: unix ubuntu amazon-ec2 cron crontab

我有一个名为script.py的脚本,位于EC2实例上。该脚本读取名为open(data.csv, 'r')的同一文件夹(代码:data.csv)中的文件。这是cron的工作:

* * * * * /home/ubuntu/anaconda3/bin/python /home/ubuntu/project/script.py > /var/log/myjob.log 2&>1

当我自己运行脚本时python script.py完美无缺。但是,当cron运行脚本时,会在myjob.log文件中打印出一条python错误(正如我的意图):

[Errno 2] No such file or directory: 'data.csv'

我怀疑cronjob不会在我自己运行它的同一目录中运行脚本,但是,我不知道如何编写crontab行告诉cron从脚本目录运行脚本是在。

1 个答案:

答案 0 :(得分:1)

假设/home/ubuntu ...

* * * * * cd /home/ubuntu/ && ./anaconda3/bin/python ./project/script.py > /var/log/myjob.log 2>&1

2>&1添加到最后与您的问题无关,但会将STDERR输出捕获到您的日志中,这可能也是您想要的。