বাশ কিভাবে একটি ভেরিয়েবলে কমান্ড এক্সিকিউট করবেন?

Bash How Execute Command Variable



ব্যাশ স্ক্রিপ্টগুলি বিভিন্ন উপায়ে তৈরি করা যেতে পারে এবং আমাদের মধ্যে বেশিরভাগই একটি বাশ স্ক্রিপ্টের মধ্যে সাধারণ কমান্ডগুলি কার্যকর করার সাথে পরিচিত। যাইহোক, এই কমান্ডগুলি ব্যাশের ভেরিয়েবলের মধ্যেও অন্তর্ভুক্ত করা যেতে পারে। এই প্রক্রিয়াটি কমান্ড প্রতিস্থাপন হিসাবে পরিচিত এবং এটি সাধারণত একটি ভেরিয়েবলে একটি কমান্ডের আউটপুট সংরক্ষণ করতে ব্যবহৃত হয় যাতে আপনাকে সেই কমান্ডটি বারবার স্পষ্টভাবে চালাতে না হয় বরং আপনি কেবল সেই ভেরিয়েবলটি অ্যাক্সেস করতে পারেন সেই কমান্ডের আউটপুট পেতে তুমি যখন চাও. এই নিবন্ধে, আমরা আপনাকে দেখাব কিভাবে এটি করা যেতে পারে।

দ্রষ্টব্য: নীচে প্রদর্শিত সমস্ত দৃশ্য উবুন্টু 20.04 এ পরিচালিত হয়েছে। যাইহোক, তারা ঠিক একইভাবে লিনাক্সের অন্য কোন স্বাদের সাথে কাজ করবে।







ব্যাশে একটি ভেরিয়েবলে কমান্ড চালানোর পদ্ধতি:

ব্যাশে একটি ভেরিয়েবলে একটি কমান্ড কার্যকর করার পদ্ধতি প্রদর্শনের জন্য, আমরা আপনার কাছে তিনটি ভিন্ন দৃশ্য উপস্থাপন করব যা নিম্নরূপ:



একটি ভেরিয়েবলে সংরক্ষিত ইকো কমান্ড কার্যকর করা:

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



ধাপ # 1: একটি বাশ স্ক্রিপ্ট তৈরি করা:

আপনাকে আপনার হোম ফোল্ডারে একটি ব্যাশ স্ক্রিপ্ট তৈরি করতে হবে যার জন্য আপনাকে ফাইল ম্যানেজার আইকনে ক্লিক করতে হবে যেমনটি আপনি নিম্নলিখিত চিত্র থেকে দেখতে পাচ্ছেন:





এখন আপনার হোম ফোল্ডারে কোন স্থান খুঁজুন এবং একটি মেনু চালু করতে তার উপর ডান ক্লিক করুন। এই মেনু থেকে নতুন ডকুমেন্ট বিকল্পটি নির্বাচন করুন এবং তারপর সাব-ক্যাসকেডিং মেনু থেকে খালি ডকুমেন্ট বিকল্পটি নির্বাচন করুন। এটি করলে আপনার হোম ফোল্ডারে একটি নতুন ডকুমেন্ট তৈরি হবে। এখন এই নতুন তৈরি ডকুমেন্টের নাম পরিবর্তন করুন আপনার পছন্দের যেকোনো নাম দিয়ে .sh এক্সটেনশন। আমাদের ক্ষেত্রে, আমরা এর নাম দিয়েছি CommandVar.sh।



এই ফাইলে একটি বাশ স্ক্রিপ্ট লেখার জন্য, এটি খুলতে ডাবল ক্লিক করুন এবং তারপরে আপনার ব্যাশ ফাইলে নীচের ছবিতে দেখানো স্ক্রিপ্টটি টাইপ করুন। এখানে, স্ক্রিপ্টের প্রথম লাইন অর্থাৎ #!/Bin/bash দেখায় যে এই ফাইলটি আসলে একটি বাশ ফাইল। তারপর আমরা test নামে একটি ভেরিয়েবল তৈরি করেছি এবং এটি $ $ (echo Hi there!) মান নির্ধারণ করেছি। যখনই আপনি একটি ভেরিয়েবলে কমান্ড সংরক্ষণ করতে চান, তখন আপনাকে $ চিহ্নের পূর্বে সেই কমান্ডটি টাইপ করতে হবে। এই ক্ষেত্রে, আমরা ইকো কমান্ডটি পরীক্ষা ভেরিয়েবলে সংরক্ষণ করতে চেয়েছিলাম তাই আমরা কেবল একটি এলোমেলো বার্তা অনুসারে ইকো কমান্ডটি টাইপ করেছি এবং এটি বৃত্তাকার বন্ধনীতে আবদ্ধ করেছি এবং এর আগে একটি $ চিহ্ন রেখেছি। সুতরাং এখন, যদি আমরা এই ইকো কমান্ডটি চালাতে চাই, তাহলে আমাদের টেস্ট ভেরিয়েবল অ্যাক্সেস করতে হবে। অতএব, পরীক্ষা ভেরিয়েবলে সংরক্ষিত ইকো কমান্ড সফলভাবে চালানো যায় কি না তা যাচাই করার জন্য, আমরা অন্য ইকো কমান্ড ব্যবহার করে টার্মিনালে টেস্ট ভেরিয়েবলের আউটপুট প্রিন্ট করেছি। এই স্ক্রিপ্টটি টাইপ করার পরে, আপনাকে আপনার ফাইলটি সংরক্ষণ করতে হবে এবং এটি বন্ধ করতে হবে।

ধাপ # 2: টার্মিনালের মাধ্যমে ব্যাশ স্ক্রিপ্ট চালানো:

এখন আপনাকে টার্মিনালের মাধ্যমে এই স্ক্রিপ্টটি চালাতে হবে। সুতরাং, উবুন্টু 20.04 এ টার্মিনালটি খুলুন এবং তারপরে নিম্নলিখিত কমান্ডটি টাইপ করুন:

বাশCommandVar.sh

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

একটি পরিবর্তনশীল মধ্যে সংরক্ষিত seq কমান্ড নির্বাহ:

এই পরিস্থিতিতে, আমরা একটি ভেরিয়েবলে সংরক্ষিত seq কমান্ড ব্যবহার করে সংখ্যার একটি ক্রম মুদ্রণ করব। এটি হওয়ার জন্য, আমরা নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করে উপরে তৈরি বাশ স্ক্রিপ্টটি সংশোধন করব:

ধাপ # 1: উপরে তৈরি বাশ স্ক্রিপ্ট পরিবর্তন করা:

উপরের পদ্ধতিতে আপনার তৈরি করা বাশ ফাইলটি খুলুন এবং এতে নিম্নলিখিত স্ক্রিপ্টটি টাইপ করুন। এখানে, আমরা ক্রম নামের একটি পরিবর্তনশীল তৈরি করেছি। আমাদের লক্ষ্য হল seq কমান্ড ব্যবহার করার সময় 1 থেকে 10 পর্যন্ত সংখ্যা মুদ্রণ করা। এটি করার জন্য, আমরা ক্রম পরিবর্তনশীল $ (seq 1 10) মান নির্ধারণ করেছি। আপনি চাইলে আপনার পছন্দের সংখ্যার অন্য কোন পরিসীমাও নির্দিষ্ট করতে পারেন। Seq কমান্ডের পর প্রথম সংখ্যাটি ক্রমের নিচের সীমানা নির্দেশ করে যেখানে দ্বিতীয় সংখ্যাটি উপরের সীমানাকে নির্দেশ করে। এই স্ক্রিপ্টটি টাইপ করার পরে, আপনার ফাইলটি সংরক্ষণ করুন এবং এটি বন্ধ করুন।

ধাপ # 2: টার্মিনালের মাধ্যমে পরিবর্তিত ব্যাশ স্ক্রিপ্ট চালানো:

এখন উপরে বর্ণিত পদ্ধতিতে আপনার ব্যাশ স্ক্রিপ্টটি চালান এবং আপনি নীচের ছবিতে দেখানো হিসাবে আপনার টার্মিনালে নির্দিষ্ট ক্রম দেখতে সক্ষম হবেন:

ভেরিয়েবলে সংরক্ষিত 'পিডব্লিউডি' কমান্ড কার্যকর করা:

আপনি একটি ভেরিয়েবলে সংরক্ষিত pwd কমান্ড ব্যবহার করে আপনার কাজের ডিরেক্টরি মুদ্রণ করতে পারেন। এটি প্রদর্শনের জন্য, আমরা নীচে বর্ণিত পদক্ষেপগুলি অনুসরণ করে উপরে তৈরি বাশ স্ক্রিপ্টটি আবার সংশোধন করব:

ধাপ # 1: উপরে তৈরি বাশ স্ক্রিপ্ট পরিবর্তন করা:

আপনি যে বাশ ফাইলটি সংশোধন করেছেন তা খুলুন এবং তারপরে নীচের ছবিতে দেখানো স্ক্রিপ্টটি টাইপ করুন। এই স্ক্রিপ্টে, আমরা working_directory নামে একটি ভেরিয়েবল তৈরি করেছি এবং এটি $ (pwd) মান নির্ধারণ করেছি। Pwd কমান্ডটি কেবল তার আউটপুট অর্থাৎ ওয়ার্কিং_ডাইরেক্টরি ভেরিয়েবলে বর্তমান ওয়ার্কিং ডিরেক্টরি সংরক্ষণ করবে। Pwd কমান্ড সঠিকভাবে কার্যকর হয়েছে কি না তা নিশ্চিত করার জন্য, আমরা echo কমান্ড ব্যবহার করে টার্মিনালে working_directory ভেরিয়েবলের মান প্রিন্ট করেছি। এখন এই ফাইলটি সংরক্ষণ করুন এবং তারপরে এটিতে পরিবর্তিত ব্যাশ স্ক্রিপ্ট টাইপ করার পরে এটি বন্ধ করুন।

ধাপ # 2: টার্মিনালের মাধ্যমে পরিবর্তিত ব্যাশ স্ক্রিপ্ট চালানো:

এখন উপরে বর্ণিত একই পদ্ধতিতে এই ব্যাশ স্ক্রিপ্টটি চালান। এই বাশ স্ক্রিপ্টের আউটপুট আপনাকে বর্তমান কাজের ডিরেক্টরি দেখাবে। আউটপুটের হাইলাইট করা অংশটি আসলে, pwd কমান্ডের আউটপুট।

উপসংহার:

এই নিবন্ধটি একটি খুব ভাল ধারণা দেয় যে আপনি কীভাবে একটি কমান্ড চালাতে পারেন যা ব্যাশের একটি ভেরিয়েবলের মধ্যে সংরক্ষিত থাকে এবং আপনি যদি স্বাধীনভাবে কমান্ডটি চালান তবে আপনি একই আউটপুট পেতে পারেন।