টার্মিনালে একটি রুবি স্ক্রিপ্ট কিভাবে কার্যকর করবেন?


231

আমি আমার ম্যাক (রুবি, রেলস, হোমব্রিউ, গিট ইত্যাদি) এ যা কিছু প্রয়োজন তা ঠিক করে রেখেছি এবং একটি ছোট প্রোগ্রামও লিখেছি। এখন, আমি কীভাবে এটি টার্মিনালে চালাব? আমি প্রোগ্রামটি রেডকারে লিখেছি এবং এটি একটি .rb হিসাবে সংরক্ষণ করেছি, তবে টার্মিনালের মাধ্যমে কীভাবে এটি সম্পাদন করতে হয় তা আমি জানি না। আমি প্রোগ্রামটি চালাতে চাই এবং এটি বাস্তবে কাজ করে কিনা তা দেখতে চাই। আমি এটা কিভাবে করবো?


54
আমি জানি না যে আপনার প্রথম প্রশ্নটি কে ভোট দিয়েছিল, তবে আমি মনে করি এটি কঠোর তাই আমি এটির পিছনে ভোট দিয়েছি। সব কিছুর জন্য শুভকামনা, এটি প্রথমে এত বিভ্রান্ত বলে মনে হচ্ছে তবে অধ্যবসায় করুন এবং দীর্ঘকাল পরে এটি দ্বিতীয় প্রকৃতি হয়ে উঠবে এবং তারপরে আপনি এখানে অন্য লোকদের সাহায্য করবেন।
আয়েন

11
2017 এ দ্রুত এগিয়ে যান এবং এখন ওপিতে 2,555 পয়েন্ট এবং 100 টিরও বেশি ব্যাজ রয়েছে। :)
ড্যানিয়েল

উত্তর:


245

শুধু কল: ruby your_program.rb

অথবা

  • আপনার প্রোগ্রামটি দিয়ে শুরু করুন #!/usr/bin/env ruby,
  • চালিয়ে আপনার ফাইলকে কার্যকর করতে সক্ষম করুন chmod +x your_program.rb
  • এবং কর ./your_program.rb some_param

1
আমি যখন রুবিকে আপনার_প্রগ্রাম.আরবি কল করি তখন আমি এটি পেয়েছি: রুবি: এ জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই - testapp.rb (লোডেরর)
টম ম্যাক্সওয়েল

1
@ টমম্যাক্সওয়েল যখন বলেন ruby your_program.rb, আপনার প্রোগ্রামের নাম যাই হোক না কেন আপনাকে 'your_program.rb' প্রতিস্থাপন করার কথা। এই ক্ষেত্রে, আপনার ত্রুটি বার্তার উপর ভিত্তি করে, সম্ভবত এটি বলে মনে করা হচ্ছে ruby testapp.rb। যদিও @ রবিন সঠিক যে আপনাকে রুবি ফাইলের মতো একই ডিরেক্টরিতে থাকতে হবে।
জোশুয়া গাল

2
আমি মনে করি তিনি করেছেন, অন্যথায় ত্রুটি বার্তাটি টেস্টঅ্যাপ.আরবি সম্পর্কে না। তবে তার অন্যান্য মন্তব্যের ভিত্তিতে তিনি cdনিজের ডেস্কটপ ডিরেক্টরিতে কীভাবে যাবেন তা জানতেন না , তাই এটি অবশ্যই হবে।
রবিন

1
কিছু কিছু .rb ফাইলের প্রয়োজন আছে কিভাবে?
জ্যাকি 23

1
@ ক্রিস পেজ, প্রথম উপায়টি ব্যবহার করে আমার আসলে এই সমস্যা হয়েছিল। আপনার পরামর্শ অনুসারে আমি মোড পরিবর্তন করেছি এবং এটি কাজ করেছে! অসংখ্য ধন্যবাদ!
এনস্টেইন

36

আপনার টার্মিনালটি খুলুন এবং ফোল্ডারটি খুলুন যেখানে ফাইলটি সংরক্ষণ করা হয়েছে।
প্রাক্তন/home/User1/program/test.rb

  1. টার্মিনাল খুলুন
  2. cd /home/User1/program
  3. ruby test.rb

বিন্যাস বা টেস্ট.আরবি

class Test 
  def initialize
   puts "I love India"
  end
end

# initialize object
Test.new

আউটপুট

I love India

2
Classহওয়া উচিত class(নিম্ন সি দিয়ে ) অন্যথায় এটি কাজ করবে না।
ড্যানিয়েল এইচ

24

ধরে নিলাম রুবি ইন্টারপ্রেটার আপনার প্যাথে রয়েছে (এটি হওয়া উচিত), আপনি কেবল চালান

ruby your_file.rb

এটি আমাকে একটি ত্রুটি বার্তা দেয়, তাই আমি অনুমান করছি সেটআপ করার সময় আমি কিছু ভুল করেছি। আমি কেমন করে ঐটি করি?
টম ম্যাক্সওয়েল

রুবি: এ জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই - testapp.rb (LoadError)
টম ম্যাক্সওয়েল

একটি testapp.rb কি? আপনি যেখানে একই দির সেখানে আছেন?
সার্জিও টুলেন্টসেভ

আমার মনে হয় আপনি আমার রুখে রুবি দোভাষী সম্পর্কে যা বলেছিলেন তা হ'ল বিষয়টি। আমি সম্ভবত কিছু সঠিকভাবে করিনি; সবকিছু সেট আপ করতে আমাকে প্রচুর গোলমাল করেছিল।
টম ম্যাক্সওয়েল

2
cdটার্মিনাল কমান্ড যা বর্তমান ডিরেক্টরি পরিবর্তন করে। উদাহরণস্বরূপ, আপনার HOME_DIR এ থাকা একটি "ডেস্কটপ" দির যেতে, আপনাকে করতে হবে cd ~/Desktop
সার্জিও টুলেন্টসেভ

15

রুবি ফাইল ব্যবহার করতে কল করতে: ruby your_program.rb

আপনার রুবি ফাইলটি স্ক্রিপ্ট হিসাবে কার্যকর করতে:

  1. আপনার প্রোগ্রাম দিয়ে শুরু করুন #!/usr/bin/env ruby

  2. স্ক্রিপ্ট ব্যবহার করে চালান ./your_program.rb param

  3. আপনি যদি এই স্ক্রিপ্টটি সম্পাদন করতে সক্ষম না হন তবে ফাইলের জন্য অনুমতি চেক করুন।

সাধারণত কোনও স্ক্রিপ্ট সম্পাদন করতে আপনাকে এক্সিকিউট করার অনুমতি দিতে হবে। যদি এটি না দেওয়া হয় তবে এটি উপরের কমান্ডের সাথে কাজ করবে না। আপনার অনুমতিগুলি পরীক্ষা করুন এবং তারপরে একই কমান্ডটি ব্যবহার করুন।
প্রীতি বিয়ানি

4

ruby XXXXX.rbদোভাষী যদি আপনার inv PATH ভেরিয়েবলটিতে থাকে তবে কেবলমাত্র টার্মিনালটিতে অনুরোধ করুন।

(এটি আপনার চালনা না করা অবধি খুব কমই রেলের জিনিস হতে পারে))


2

যদিও এই প্রশ্নের উত্তর দিতে খুব দেরি হয়েছে, তবে এখনও যারা এই ছেলেদের জন্য এখানে এসেছিলেন ঠিক আমার মতো একই সমস্যার সমাধান দেখতে পেয়েছেন এবং এই পৃষ্ঠায় সন্তোষজনক উত্তর পান নি, কারণটি হ'ল আপনার ফাইলটি নেই .rb এক্সটেনশন আকারে। আপনার কাছে সম্ভবত এটি সাধারণ পাঠ্য মোডে রয়েছে। আমাকে বিস্তারিত জানাতে দিন। পৃষ্ঠায় পুরো সমাধানটি আবদ্ধ করে এখানে আপনি যান (ধরে নিবেন যে আপনার ফাইলের নামটি abc.rb বা কমপক্ষে আপনি এ.বি.সি. তৈরি করেছেন):

টার্মিনাল উইন্ডোতে টাইপ করুন:

cd ~/to/the/program/location
ruby abc.rb

এবং আপনি সম্পন্ন হয়েছে

যদি নিম্নলিখিত ত্রুটি ঘটে থাকে

ruby: No such file or directory -- abc.rb (LoadError)

তারপরে আপনাকে যে ডিরেক্টরিতে অ্যাবসি ফাইল রয়েছে সেই ডিরেক্টরিতে যান, এটিকে abc.rb নামকরণ করে gedit বন্ধ করুন এবং ফাইলটি abc.rb খুলুন op আদেশ এবং সাফল্যের একই সেট প্রয়োগ করুন!


2

যারা পুরানো উত্তরের জন্য সমাধান পাচ্ছেন না তাদের জন্য, আমি কেবল আমার ফাইলের নামটি আমার কোডের প্রথম লাইন হিসাবে রেখেছি।

তাই ভালো

 #ruby_file_name_here.rb

 puts "hello world"

1

ওপেন টার্মিনাল

cd to/the/program/location
ruby program.rb

বা #!/usr/bin/env rubyআপনার প্রোগ্রামের প্রথমটিতে যুক্ত করুন (স্ক্রিপ্টটি বলে যে এটি রুবি ইন্টারপ্রেটার ব্যবহার করে কার্যকর করা হয়েছে)

ওপেন টার্মিনাল

cd to/the/program/location
chmod 777 program.rb
./program.rb

1

যদি কেউ একটি রেল পরিবেশে কোনও স্ক্রিপ্ট চালানোর চেষ্টা করছে, রেলগুলি রেলের প্রসঙ্গে স্ক্রিপ্টগুলি চালানোর জন্য একটি রানারকে সরবরাহ করে

rails runner my_script.rb

আরও বিশদ এখানে: https://guides.rubyonrails.org/command_line.html#rails-runner

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.