রুবির সাথে কীভাবে প্রোগ্রাম করবেন তা শিখতে আমি আইআরবি (ইন্টারেক্টিভ রুবি কনসোল) ব্যবহার করছি। আমি যদি প্রথমে আমার প্রোগ্রামগুলিকে একটি পাঠ্য সম্পাদকটিতে লিখি তবে কনসোলে কোনও ফাইল লোড করব কী করে?
রুবির সাথে কীভাবে প্রোগ্রাম করবেন তা শিখতে আমি আইআরবি (ইন্টারেক্টিভ রুবি কনসোল) ব্যবহার করছি। আমি যদি প্রথমে আমার প্রোগ্রামগুলিকে একটি পাঠ্য সম্পাদকটিতে লিখি তবে কনসোলে কোনও ফাইল লোড করব কী করে?
উত্তর:
আপনার যদি কেবল একটি ফাইল আইআরবিতে লোড করতে হয় irb -r ./your_file.rbতবে আপনি একই ডিরেক্টরিতে থাকলে এটির সাথে অনুরোধ করতে পারেন ।
এটি স্বয়ংক্রিয়ভাবে ফাইলটির প্রয়োজন এবং আপনাকে অবিলম্বে এটির সাথে কাজ করার অনুমতি দেয়।
rake irbএবং এটি আমার জন্য সব কিছু করে does
irb -r /foo/foo.rb
উবুন্টু ১৪.০৪-এ রুবি ১.৯.৩ ব্যবহার করে, আমি বর্তমান ডিরেক্টরি থেকে irbনিম্নলিখিত কমান্ড লাইনের সাথে ফাইলগুলি লোড করতে সক্ষম হয়েছি :
irb -I . -r foo.rb
যেখানে foo.rbফাইল আমি কি আমার বর্তমান ডিরেক্টরি থেকে লোড করতে চান হয়। -Iবিকল্প বর্তমান ডিরেক্টরী (যোগ করার জন্য প্রয়োজনীয় .হিসাবে রুবি মানুষ পৃষ্ঠা থেকে ব্যাখ্যা, রুবি এর লোড পথে)। এটি requireবর্তমান ডিরেক্টরি থেকে ফাইলগুলিকে সম্ভব করে তোলে , যা সমাপ্তির -rবিকল্পটি irb।
আমি যখন এই সমস্যাটি পেলাম তখন মূল কীটি আমার পক্ষে সুস্পষ্ট ছিল না সেটি হ'ল -Iবিকল্প। একবার আপনি যে কি, আপনি কল করতে পারেন require 'foo.rb'মধ্যে থেকে irbবর্তমান ডিরেক্টরির মধ্যে কোনো ফাইল জন্য। এবং অবশ্যই, আপনি যে ডিরেক্টরিটি চান তা কেবল বিকল্পের .সাহায্যে নির্দিষ্ট করতে পারেন -I। লোড পাথের একাধিক ডিরেক্টরি অন্তর্ভুক্ত করার জন্য এগুলি একটি কোলন দিয়ে আলাদা করুন (:), যেমন:
irb -I foo/:bar/:baz/
এই কমান্ডের ডিরেক্টরি যোগ হবে foo, barএবং bazরুবি এর লোড পথের দিকে।
চূড়ান্ত বিকল্পটি হ'ল ফাইলটি ব্যবহার করার সময় requireবা -rলোড করার সময় ফাইলের আপেক্ষিক বা পরম পথ ব্যবহার করা :
irb -r ./foo.rb
বা এর মধ্যে থেকে irb:
> require './foo.rb'
টাইপ করুন irb
এবং তারপর
require './ruby_file.rb'
এটি ধরে নেওয়া হচ্ছে যে ruby_file.rb একই ডিরেক্টরিতে রয়েছে। সেই অনুযায়ী সামঞ্জস্য করুন।
require_relative। উদাহরণস্বরূপ require "./lib/foo"একই কাজ করেrequire_relative "lib/foo"
.rbrequire './ruby_file'. I checked in alচ্ছিক , আপনি রুবি লিখতে পারেন 1.9.3p551`
দুইটি রাস্তা:
source("filename.rb")
require("filename.rb")
requireযা স্ক্রিপ্টটি পুনরায় লোড করতে প্রদর্শিত হবে না (মূল উত্সের কোনও পরিবর্তনগুলি আপনার সেশনে প্রতিফলিত হবে না), যখন sourceমূল স্ক্রিপ্টে পরিবর্তনগুলি প্রতিবিম্বিত হয় ।
এটি আপনার রুবি উপর নির্ভর করে। রুবি ১.৮-এ আপনার বর্তমান পথ অন্তর্ভুক্ত রয়েছে, অন্যদিকে রুবি ১.৯ নেই। $:আপনার পথটি অন্তর্ভুক্ত রয়েছে কি না তা নির্ধারণের জন্য মূল্যায়ন করুন । রুবি 1.9 এ আপনাকে অবশ্যই পুরো পথটি ব্যবহার করতে হবে যা সর্বদা একটি নিরাপদ বাজি bet
তারপরে আপনি ফাইলটি অন্তর্ভুক্ত করতে requireবা ব্যবহার করতে পারেন load।
requireএটি সন্ধান করার সময় আপনাকে ফাইলটির প্রত্যয় যুক্ত করার প্রয়োজন হয় না এবং কেবল একবার ফাইলটি অন্তর্ভুক্ত করা হবে। বেশিরভাগ সময় requireপরিবর্তে ব্যবহার করা উচিত load।
পরীক্ষা করে দেখুন $ LOAD_PATH (রুবি) করার জন্য একটি ডিরেক্টরি যোগ করার পদ্ধতি যদি আপনি রুবি 1.8 ব্যবহার করা করতে যাচ্ছি
পাঠ্য সম্পাদকটিতে রুবি কোডগুলি টাইপ করুন
এটি এক্সটেনশন .rb দিয়ে সংরক্ষণ করুন (উদাহরণস্বরূপ: ডেমো.আরবি )।
লিনাক্সে, আপনার টার্মিনালটি খুলুন তারপরে ডিরেক্টরিটি সেই ফাইলের বর্তমান অবস্থানে পরিবর্তন করুন (ডিরেক্টরি পরিবর্তন করতে সিডি কমান্ড ব্যবহৃত হয়)।
এর পরে, irb এবং আপনার ফাইলের নাম টাইপ করুন (আপনার এক্সটেনশন (.rb) অন্তর্ভুক্ত করতে ভুলবেন না)।
এই চিত্রটিতে, আমি একটি সাধারণ রুবি ফাইল লোড করেছি যা কেবল "রুবি" প্রিন্ট করে।
আইআরবি-তে পাথ লোড করার আরেকটি উপায় হ'ল টাইপ করা দরকার তা হলে ফাইলটি টার্মিনালে টেনে আনুন 🙂 লিনাক্স মিন্ট ব্যবহার করে পরীক্ষা করা।