ruby on rails控制台进程在后台

时间:2010-07-21 17:47:05

标签: ruby-on-rails ruby

有没有办法在后台运行rails脚本/控制台的进程? 我有一个一次性的lib脚本,需要两天左右才能执行,我想将其设置为在后台运行。

类似的东西:

script/console

然后:

>> load 'script.rb' &

在命令行中,我只会这样做:

$ command &

我确实发现:http://backgroundrb.rubyforge.org/但这对于这个一次性的任务来说似乎有些过分。

我也尝试过:

$ ruby data_importer2.rb &

虽然这不会导入活动记录内容(错误:未初始化的常量ActiveRecord)

谢谢!

3 个答案:

答案 0 :(得分:6)

您可以使用脚本运行器而不是控制台执行此操作:

./script/runner script.rb &

答案 1 :(得分:2)

您可以使用script / runner,或者如果您需要在某个时刻再次运行它,最简单的方法是将其包装在rake任务中。

答案 2 :(得分:2)

$ script/console
>> fork { load 'script.rb' }
>> Process.detach
>> # ...