IRB से .rb फाइल कैसे चलाएं?


88

मैं रूबी ऑन रेल्स के साथ शुरुआत कर रहा हूं। मैं वर्तमान में एक ट्यूटोरियल से गुजर रहा हूँ जहाँ यह कहता है कि मुझे IRB से एक .rb फ़ाइल चलानी है और वह मेरी वर्तमान निर्देशिका में एक .xml फ़ाइल बनाएगी।

मेरा सवाल यह है कि मैं IRB में एक .rb फ़ाइल कैसे चलाऊँ?
और क्या मुझे उस निर्देशिका में होना है जहां यह .rb फ़ाइल रहती है जब मैं इसे आईआरबी में चलाता हूं?

मैंने निम्नलिखित प्रयास किया: irbफ़ाइल की निर्देशिका में कमांड लाइन पर सिर्फ टाइप करना। जहां तक ​​मैं समझता हूं आईआरबी सत्र शुरू होता है।
तब मैंने टाइप irb "filename.rb"किया था जो वर्तमान निर्देशिका में कुछ भी बना रहा था लेकिन कम से कम उसने कोई त्रुटि नहीं दी।

मैंने अन्य सामानों के एक पूरे समूह को भी आज़माया जो सादे ने मुझे त्रुटियां दीं। इसलिए मुझे नहीं लगता कि मैं इसे हल कर सकता हूं और इस मामले को सुलझाने में मदद नहीं की।

मैं तेंदुआ चला रहा हूं।

जवाबों:


175

आप किसी फ़ाइल को irb में "रन" कर सकते हैं, बस आवश्यकता होती है या उसे लोड करके।

$ irb
>> load './filename.rb'

Irb के भीतर अपनी वर्तमान कार्यशील निर्देशिका को बदलने के लिए, आप FileUtils का उपयोग कर सकते हैं :

>> require 'fileutils'
>> FileUtils.pwd # prints working directory
>> FileUtils.cd '/path/to/somewhere' # changes the directory

3
irb से इसे प्राप्त करने के लिए आपको पूरी तरह से योग्य पथ प्रदान करने की आवश्यकता है, इस प्रकार: require '~/myrubystuff/coolstuff.rb' इसके बजाय require 'coolstuff'
runlevel0

मैं fileutilsअकेले नाम की आवश्यकता के लिए सक्षम था , कोई निर्देशिका पथ की आवश्यकता नहीं थी। मुझे यकीन है कि यह पर्यावरण पर निर्भर है और सभी को योग्य पथ का उपयोग करने की आवश्यकता नहीं होगी।
volx757

5

यदि आप अपनी फाइल को irb सेशन में लोड करना चाहते हैं और आप रूबी 2+ का उपयोग कर रहे हैं, तो आप irre फाइल को इस तरह लोड कर सकते हैं :

irb -r ./the_name_of_your_file.rb

यह दिए गए फ़ाइल लोड के साथ एक irb सत्र खोलता है।

कल्पना करें कि आपके पास इस तरह एक वर्ग के साथ फाइल है:

class Example
  def initialize(name)
    @name = name
  end

  def print__example
    p name
  end
end

आप irb सत्र में उदाहरण वर्ग का उपयोग करने में सक्षम होंगे ।


यही तो मैं वास्तव में खोज रहा था, बहुत बहुत धन्यवाद!
थॉमस

यह केवल फ़ंक्शंस तक पहुंच देता है, न कि फ़ाइल में परिभाषित चर।
रेडॉन रोसबोरो

2

हम केवल उस निर्देशिका में एक .rb फ़ाइल बना सकते हैं, जिसे आप वर्तमान में किसी भी टेक्स्ट एडिटर का उपयोग करके काम कर रहे हैं और उस में सभी कोड टाइप करें और फिर ruby filename.rbटर्मिनल में कमांड का उपयोग करें , irb में नहीं, तो यह irb में आउटपुट दिखाता है।


4
लेकिन फ़ाइल को लोड करके आप वहां परिभाषित चर तक पहुंच सकते हैं। समस्या निवारण या पुस्तकालय के साथ खेलते समय काम करना।
सोनिया हैमिल्टन

@ श्रीनिवास यह वही था जिसकी मुझे तलाश थी। धन्यवाद!
जोशुआ पिंटर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.