Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
未执行cronjob_Cron_Crontab - Fatal编程技术网

未执行cronjob

未执行cronjob,cron,crontab,Cron,Crontab,我在运行cronjob时遇到问题。没有这方面的经验,所以可能是在监督某件事。以下脚本的工作原理与从shell运行时从db中删除的所有旧筛选器类似: dude@linux:~> /usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb 我使用chmod使脚本可执行。现在,我希望使用cronjo

我在运行cronjob时遇到问题。没有这方面的经验,所以可能是在监督某件事。以下脚本的工作原理与从shell运行时从db中删除的所有旧筛选器类似:

dude@linux:~> /usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb 
我使用chmod使脚本可执行。现在,我希望使用cronjob定期运行此功能:

dude@linux:~> crontab -e
该文件为空,我将其放在一行:

* * * * * /usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb 
我希望脚本每分钟都能运行,但什么也没发生。在/etc/cron.deny中,只提到“guest”,并且/etc/allow不存在。重新启动我的系统也没有帮助

crontab似乎有可能被更新:

dude@linux:~> crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.f9Et2M installed on Thu May  3 14:04:47 2012)
# (Cronie version 4.2)
* * * * * /usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb
但我在这里也有点期待:

dude@linux:~> atq
dude@linux:~>
这个工作做了些什么。每分钟都会向/var/log/cron.log添加一个条目:

2012-05-03T15:27:01+02:00 linux /USR/SBIN/CRON[5276]: (dude) CMD (/usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb)
问题是,作业没有执行。它应该从数据库中删除一些记录,但不会。手动运行同一个脚本就可以做到这一点


有人看到我错过的可能是琐碎的事情吗?

使用括号,也许这会有所帮助

*****要执行的以冒号分隔的命令


检查它。

使用括号可能会有所帮助

*****要执行的以冒号分隔的命令


检查一下。

你到底有什么问题?是否未执行该操作或您在屏幕上看不到该操作?因为crontab操作是在后台运行的。感谢您的回复,很抱歉不清楚。我编辑了这个问题,问题是它没有被执行,不需要在屏幕上看到它。你检查了cron日志了吗?你需要先激活它,例如使用debian:@Daniel谢谢,这让我更进一步了。我没有登录,但我现在有了。发生了一些事情,但它并没有改变我的数据库。我把日志添加到我的问题中。看看这里:你的问题到底是什么?是否未执行该操作或您在屏幕上看不到该操作?因为crontab操作是在后台运行的。感谢您的回复,很抱歉不清楚。我编辑了这个问题,问题是它没有被执行,不需要在屏幕上看到它。你检查了cron日志了吗?你需要先激活它,例如使用debian:@Daniel谢谢,这让我更进一步了。我没有登录,但我现在有了。发生了一些事情,但它并没有改变我的数据库。我将日志添加到我的问题中。请看这里:谢谢。我试过了,但没用。现在有两对括号,所以它似乎已经自动添加了括号。其他一切似乎都很好。请分析您正在执行的操作。确保存在要删除的数据。或者在ruby文件中编写一些琐碎的文件,以确保进程正在执行调用。谢谢。我试过了,但没用。现在有两对括号,所以它似乎已经自动添加了括号。其他一切似乎都很好。请分析您正在执行的操作。确保存在要删除的数据。或者在ruby文件中编写一些琐碎的文件,以确保进程正在执行调用。