Ubuntu 10.04 LTS Cron工作不起作用

时间:2011-01-21 16:26:46

标签: linux ruby-on-rails-3 ubuntu cron ubuntu-10.04

我正在尝试使用cronjob运行ruby脚本(使用Rails3 runner)和以下Cronjobs:

    #!/bin/bash
    0-59 * * * * echo 'script test'

    # Begin Whenever generated tasks for: test1
    * * * * * /bin/bash -l -c '/home/administrator/test1/script/rails runner /home/administrator/test1/app/create_flag.rb >> /home/administrator/test1/test.log 2>&1'

# End Whenever generated tasks for: test1

test1 是Rails3项目文件夹的名称。

“echo'脚本测试'”作为测试添加,但似乎都没有执行。我目前正在使用 Ubuntu 10.04 LTS

我是否错误地写了cronjob?

3 个答案:

答案 0 :(得分:2)

Crontab文件不是shell脚本。因此,您不需要在文件开头#!/bin/bash。另外,那里的空间是可疑的。尝试这样的事情:

SHELL=/bin/bash
MAILTO=administrator@localhost
BASH_ENV=/home/administrator/.bash_profile

* * * * * /home/administrator/test1/script/rails runner /home/administrator/test1/app/create_flag.rb >> /home/administrator/test1/test.log 2>&1'

另外,请务必将crontab -e称为administrator以编辑crontab文件。

答案 1 :(得分:1)

您需要指定运行命令的用户(您可以看到格式here。此外,echo会输出'script test'到什么?如果您想要测试,请尝试触摸文件,所以你可以亲眼看到cron作业的动作。

答案 2 :(得分:0)

Cron不使用您的用户环境,因此它不具有您拥有的相同路径集。这意味着您应该使用命令的绝对路径。