Dessas abordagens mencionadas anteriormente, nenhuma parecia limpa e ideal como você esperaria que um script autônomo fosse executado (não foi avaliado ou canalizado por meio de <redirecionamento), mas finalmente isso funciona perfeitamente para mim:
(para Rails 3)
Insira no topo do seu script:
#!/usr/bin/env ruby
APP_PATH = File.expand_path(appdir = '/srv/staging/strat/fundmgr/config/application', __FILE__)
require File.expand_path(appdir + '/../boot', __FILE__)
require APP_PATH
# set Rails.env here if desired
Rails.application.require_environment!
# your code here...
Claro, defina seu próprio caminho de aplicativo Rails na linha APP_PATH.
Dessa forma, posso evitar ter que entrar em qualquer interativo irb
ou rails c
e posso testar meu script.rb no prompt do shell, antes, por exemplo. agendá-lo no crontab.
Suporta também parâmetros de linha de comando sem problemas e minimiza os níveis de wrappers antes de chegar ao seu código.
CRÉDITO (também mostra um exemplo do Rails 2)
http://zerowidth.com/2011/03/18/standalone-script-runner-bin-scripts-in-rails.html