我正在尝试使用cronjob与以下Cronjobs一起运行ruby脚本(使用Rails3运行程序):

    #!/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'script test'”被添加为测试,但似乎都没有执行。我当前正在使用 Ubuntu 10.04 LTS

我写错了cronjob吗?

最佳答案

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文件。

10-08 04:50