5

我以前没有使用过 cron,所以我不能确定我做对了。我想要自动化的任务似乎没有运行。我在终端中执行了这些步骤:

  1. sudo gem 随时安装
  2. 切换到应用程序目录
  3. 无论何时。(这创建了文件 schedule.rb)
  4. 我将此代码添加到 schedule.rb:

    every 10.minutes do
      runner "User.vote", environment => "development"
    end
    
    
    every :hour do
      runner "Digest.rss", :environment => "development"
    end
    
  5. 我将此代码添加到 deploy.rb:

    after "deploy:symlink", "deploy:update_crontab"
    
    
    namespace :deploy do
      desc "Update the crontab file"
      task :update_crontab, :roles => :db do
        run "cd #{current_path} && whenever --update-crontab #{application}"
      end
    end
    
  6. 我在终端做了这个:每当

  7. 它返回:

    @hourly cd /Users/RedApple/S && script/runner -e development 'Digest.rss'
    
    
    0,10,20,30,40,50 * * * * cd /Users/RedApple/S && script/runner -e development 'User.vote'
    
  8. 在终端中单独运行这些命令可以:

    script/runner -e development 'Digest.rss'
    script/runner -e development 'User.vote'
    
  9. 现在在开发模式下运行本地服务器脚本/服务器,我没有看到任何证据表明代码实际上正在运行。有没有我没有做的步骤?“无论何时”的指南都没有显示除我所做的之外的任何其他内容。

4

1 回答 1

12

我也是新手,但我认为这只是运行

whenever

只是向您展示创建的 cron 作业会是什么样子。为了实际编写 cron 作业(使其处于活动状态),您需要执行:

whenever -w

这将为您提供完整的选项列表:

whenever -h
于 2010-12-13T18:04:11.240 回答