【问题标题】:How can I run a Rake task as a Windows "scheduled task"?如何将 Rake 任务作为 Windows“计划任务”运行?
【发布时间】:2009-06-19 22:38:45
【问题描述】:

我有一个 rake 任务,我需要在 Windows XP 机器上作为日常工作运行。我发现了 Windows“计划任务”控制面板。我正在尝试弄清楚如何让它运行我的 Rake 任务。

其中两个字段是“运行”(带有浏览按钮)和“开始”。我尝试将rake mycategory:mytask 输入“运行”,并将包含 Rake 任务的 Rails 项目目录输入“开始”。结果是一条消息说任务“无法启动”。

如何设置 Windows“计划任务”来运行 Rake 任务?

【问题讨论】:

    标签: ruby-on-rails windows ruby


    【解决方案1】:

    如果您可以构建一个可以正确执行的批处理文件,我会这样做,然后您可以指示批处理文件与任务一起运行。

    这样的事情应该可以工作:

    :: Run task every hour
    @call rake stats RAILS_ENV="production"
    

    【讨论】:

      【解决方案2】:

      此外,除了上述(正确的)批处理文件建议,AFAIK,您可能需要在设置了非空密码的帐户上运行任务。调度器的属性。

      【讨论】:

        【解决方案3】:

        只需为感兴趣的人添加更新/充实的答案...

        创建一个名为 rake.bat 的文件 - 确保使用 ANSI 编码(Windows 记事本的默认设置)保存。你可以把这个文件保存在任何地方,但我把它放在C:\ror\rake.bat

        rake.bat

        @call bundle exec rake %*
        

        现在,当您创建计划任务时,您可以将其设置为运行 .bat 文件,参数就是 rake 之后的内容。将其设置为在您选择的目录中运行。无论用户是否登录都运行,但不要以最高权限运行。为了清楚起见,下面的屏幕截图;我的 rake 任务命名空间为 manager,任务本身为 sync

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-10-09
          • 2010-09-22
          • 2013-12-13
          • 2012-08-11
          • 2013-04-10
          • 2013-04-27
          • 2012-08-15
          相关资源
          最近更新 更多