Ruby on rails 3 rails-3 cron作业不使用rails runner

Ruby on rails 3 rails-3 cron作业不使用rails runner,ruby-on-rails-3,crontab,cron-task,runner,Ruby On Rails 3,Crontab,Cron Task,Runner,最近,我遇到了以下教程,其中介绍了如何在不使用任何Gems的情况下运行cron作业 */2 * * * * /usr/bin/env ruby /home/abc/xyz/urjit.rajgor/workspace/thewall/rails/runner/home/XYZ/ABC/urjit.rajgor/workspace/thewall/app/delete_old_posts.rb 我在/app/delete_old_posts.rb中创建了一个文件 cla

最近,我遇到了以下教程,其中介绍了如何在不使用任何Gems的情况下运行cron作业

*/2 * * * * /usr/bin/env ruby /home/abc/xyz/urjit.rajgor/workspace/thewall/rails/runner/home/XYZ/ABC/urjit.rajgor/workspace/thewall/app/delete_old_posts.rb          
我在/app/delete_old_posts.rb中创建了一个文件

  class DeleteOldPosts < ActiveRecord::Base          
    # This script deletes all posts that are over 5 minutes old          
     post_ids = Post.find(:all, :conditions => ["created_at < ?", 5.minutes.ago])          
     if post_ids.size > 0     
      Post.destroy(post_ids)     
      puts "#{post_ids.size} posts have been deleted!"       
     end       
*/2 * * * * /usr/bin/env ruby /home/abc/xyz/urjit.rajgor/workspace/thewall/rails/runner/home/XYZ/ABC/urjit.rajgor/workspace/thewall/app/delete_old_posts.rb          
cron作业每两分钟运行一次,但不起作用
请帮帮我。
谢谢

尝试使用“无论何时”宝石。
*/2 * * * * /usr/bin/env ruby /home/abc/xyz/urjit.rajgor/workspace/thewall/rails/runner/home/XYZ/ABC/urjit.rajgor/workspace/thewall/app/delete_old_posts.rb          
允许您在ruby中定义cronjobs,以便能够指定rails runner、rake或其他自定义包装器,并为您编写crontab。让生活简单多了

*/2 * * * * /usr/bin/env ruby /home/abc/xyz/urjit.rajgor/workspace/thewall/rails/runner/home/XYZ/ABC/urjit.rajgor/workspace/thewall/app/delete_old_posts.rb          
只需将:
gem'where',:require=>false
添加到您的gem文件中即可

*/2 * * * * /usr/bin/env ruby /home/abc/xyz/urjit.rajgor/workspace/thewall/rails/runner/home/XYZ/ABC/urjit.rajgor/workspace/thewall/app/delete_old_posts.rb          

*/2 * * * * /usr/bin/env ruby /home/abc/xyz/urjit.rajgor/workspace/thewall/rails/runner/home/XYZ/ABC/urjit.rajgor/workspace/thewall/app/delete_old_posts.rb          

如果这是实际的crontab命令,那么看起来您在
主页
之前缺少了一个
/
。感谢您的回复。但是很抱歉,我编辑的命令已经/在home之前,但它仍然不起作用谢谢你的回答,但我尝试安装它,当我运行Whenverize时,它给了我这个错误。command Error is whenverize:command not found so,你能在不使用任何Gem的情况下帮我做这件事吗?你是用bundle exec执行的吗?如果你想知道为什么它现在能工作,请查看他们使用的rails runner的sytax。嘿,你能回答吗
*/2 * * * * /usr/bin/env ruby /home/abc/xyz/urjit.rajgor/workspace/thewall/rails/runner/home/XYZ/ABC/urjit.rajgor/workspace/thewall/app/delete_old_posts.rb