पहले बताए गए इन तरीकों में से, कोई भी साफ और आदर्श नहीं लगता था, जैसे आप एक स्टैंडअलोन स्क्रिप्ट को चलाने की उम्मीद करेंगे (न कि ई-एड या पाइप के माध्यम से <redirection), लेकिन अंत में यह मेरे लिए एकदम सही है:
(रेल के लिए 3)
अपनी स्क्रिप्ट के शीर्ष पर सम्मिलित करें:
#!/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...
बेशक, APP_PATH लाइन में अपना खुद का रेल एप्लिकेशन पथ सेट करें।
इस तरह, मैं किसी भी इंटरएक्टिव में प्रवेश करने से बच सकता हूं irb
या उदाहरण के पहले शेल प्रॉम्प्ट से rails c
अपनी script.rb का परीक्षण कर सकता हूं । Crontab में इसे शेड्यूल करना।
यह सुचारू रूप से कमांड-लाइन मापदंडों का भी समर्थन करता है, और आपके कोड में आने से पहले रैपर के स्तर को कम करता है।
CREDIT (एक रेल 2 उदाहरण भी दिखाता है)
http://zerowidth.com/2011/03/18/standalone-script-runner-bin-scripts-in-rails.html