我正在尝试使用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文件。