স্ট্রিং এর একটি তালিকা মাধ্যমে বাশ লুপ

Bash Loop Through List Strings



স্ট্রিং বা অ্যারের একটি তালিকা বা উপাদানগুলির ক্রম ব্যবহার করে পুনরাবৃত্তি করা যেতে পারে জন্য বাশ মধ্যে লুপ। আপনি কিভাবে বাশ দ্বারা স্ট্রিংগুলির তালিকা পুনরাবৃত্তি করতে পারেন তা এই টিউটোরিয়ালে বিভিন্ন ব্যাশ স্ক্রিপ্ট উদাহরণ ব্যবহার করে দেখানো হয়েছে। আপনি যদি নবাগত হন বাশ প্রোগ্রামিং হয় তাহলে আপনি টিউটোরিয়ালটি পড়তে পারেন লুপ উদাহরণ জন্য BASH এই টিউটোরিয়াল শুরু করার আগে।

'নামে একটি ব্যাশ ফাইল তৈরি করুন for_list1.sh 'এবং নিম্নলিখিত স্ক্রিপ্ট যোগ করুন। স্পেস সহ একটি স্ট্রিং মান লুপের জন্য ব্যবহার করা হয়। ডিফল্টরূপে, স্ট্রিং মান স্থান দ্বারা পৃথক করা হয়। ফর লুপ স্ট্রিংকে শব্দে বিভক্ত করবে এবং একটি নতুন লাইন যুক্ত করে প্রতিটি শব্দ মুদ্রণ করবে।







#!/বিন/ব্যাশ
# লুপ ব্যবহার করে স্পেস সহ একটি স্ট্রিং পড়ুন
জন্যমানভিতরেআমি প্রোগ্রামিং পছন্দ করি
কর
বের করে দিল $ মান
সম্পন্ন

আউটপুট:



$বাশfor_list1.sh



উদাহরণ -২: লুপ ব্যবহার করে একটি স্ট্রিং ভেরিয়েবল ইটার করা

'নামে একটি ব্যাশ ফাইল তৈরি করুন for_list2.sh 'এবং নিম্নলিখিত স্ক্রিপ্ট যোগ করুন। ভেরিয়েবলে একটি পাঠ্য বরাদ্দ করুন, স্ট্রিংভাল এবং লুপ ব্যবহার করে এই ভেরিয়েবলের মান পড়ুন। এই উদাহরণটিও আগের উদাহরণের মতো কাজ করবে এবং ভেরিয়েবলের মানকে স্পেসের ভিত্তিতে শব্দে ভাগ করবে।





#!/বিন/ব্যাশ
# একটি মান সহ একটি স্ট্রিং ভেরিয়েবল সংজ্ঞায়িত করুন
স্ট্রিংভাল='লিনাক্সহিন্টে স্বাগতম'

# লুপ ব্যবহার করে স্ট্রিং ভেরিয়েবলটি পুনরাবৃত্তি করুন
জন্যঘন্টাভিতরে $ স্ট্রিংভাল;কর
বের করে দিল $ ঘন্টা
সম্পন্ন

আউটপুট:

$বাশfor_list2.sh



উদাহরণ-3: স্ট্রিং মানগুলির একটি অ্যারে পুনরাবৃত্তি করুন

'নামে একটি ব্যাশ ফাইল তৈরি করুন for_list3.sh 'এবং নিম্নলিখিত স্ক্রিপ্ট যোগ করুন। এই স্ক্রিপ্টে টাইপ সহ স্ট্রিং মানগুলির একটি অ্যারে ঘোষণা করা হয়। অ্যারেতে দুটি মান যা স্থান ধারণ করে লিনাক্স মিন্ট এবং রেড হ্যাট লিনাক্স । এই স্ক্রিপ্ট এই মানগুলিকে একাধিক শব্দে বিভক্ত করে এবং পৃথক মান হিসাবে মুদ্রণ করে আউটপুট তৈরি করবে। কিন্তু এটি সঠিক আউটপুট নয়। এই ধরনের সমস্যার সমাধান পরবর্তী উদাহরণে দেখানো হয়েছে।

#!/বিন/ব্যাশ

# টাইপ সহ স্ট্রিং এর একটি অ্যারে ঘোষণা করুন
ঘোষণা করা -প্রতি স্ট্রিংএরে=('লিনাক্স মিন্ট' 'ফেডোরা' 'রেড হ্যাট লিনাক্স' 'উবুন্টু' 'ডেবিয়ান' )

# লুপ ব্যবহার করে স্ট্রিং অ্যারে পুনরাবৃত্তি করুন
জন্যঘন্টাভিতরে $ {StringArray [@]};কর
বের করে দিল $ ঘন্টা
সম্পন্ন

আউটপুট:

$বাশfor_list3.sh

উদাহরণ-4: একক মান হিসেবে একাধিক শব্দের স্ট্রিং মান প্রিন্ট করুন

'নামে একটি ব্যাশ ফাইল তৈরি করুন for_list4.sh 'এবং নিম্নলিখিত স্ক্রিপ্ট যোগ করুন। এই উদাহরণে, অ্যারে ভেরিয়েবলের প্রতিটি উপাদান, স্ট্রিংএরে দুটি শব্দের মান রয়েছে। বিভাজন ছাড়াই প্রতিটি মান মুদ্রণ করতে এবং পূর্ববর্তী উদাহরণের সমস্যার সমাধান করতে, আপনাকে কেবল অ্যারে ভেরিয়েবলটি সংযুক্ত করতে হবে ডবল উদ্ধৃতি লুপের মধ্যে।

#!/বিন/ব্যাশ

# টাইপ সহ একটি স্ট্রিং অ্যারে ঘোষণা করুন
ঘোষণা করা -প্রতি স্ট্রিংএরে=('উইন্ডোজ এক্সপি' 'উইন্ডোজ 10' 'উইন্ডোজ এমই' 'উইন্ডোজ 8.1'
'উইন্ডোজ সার্ভার 2016' )

# স্থান সহ অ্যারের মান পড়ুন
জন্যঘন্টাভিতরে '$ {StringArray [@]}';কর
বের করে দিল $ ঘন্টা
সম্পন্ন

আউটপুট:

$বাশfor_list4.sh

উদাহরণ -5: '*' ব্যবহার করে একটি অ্যারের স্ট্রিং মান পুনরাবৃত্তি করা

'নামে একটি ব্যাশ ফাইল তৈরি করুন for_list5.sh 'নিম্নলিখিত কোড সহ। এখানে, '*' চিহ্নটি অ্যারের সমস্ত স্ট্রিং মান পড়ার জন্য ব্যবহৃত হয়। লুপের জন্য প্রথমটি একাধিক লাইনে অ্যারের মান প্রদর্শন করতে ব্যবহৃত হয় এবং দ্বিতীয়টি লুপের জন্য একক লাইনে অ্যারে মান প্রদর্শন করতে ব্যবহৃত হয়।

#!/বিন/ব্যাশ

#একটি স্ট্রিং অ্যারে ঘোষণা করুন
ভাষা অ্যারে=('পিএইচপি' 'জাভা' 'সি #' 'সি ++' 'VB.Net' 'পাইথন' 'পার্ল')

# লাইনে অ্যারের মান প্রিন্ট করুন
বের করে দিল 'নতুন লাইনে প্রতিটি উপাদান মুদ্রণ করুন'
জন্যval1ভিতরে $ {LanguageArray [*]};কর
বের করে দিল $ val1
সম্পন্ন

বের করে দিল ''

# এক লাইনে অ্যারের মান প্রিন্ট করুন
বের করে দিল 'একক লাইনে সমস্ত উপাদান মুদ্রণ করুন'
জন্যval2ভিতরে '$ {LanguageArray [*]}';কর
বের করে দিল $ val2
সম্পন্ন
বের করে দিল ''

আউটপুট:

$বাশfor_list5.sh

উদাহরণ-6: কমা দ্বারা পৃথক করা স্ট্রিং মানগুলি পুনরাবৃত্তি করা

'নামে একটি নতুন ব্যাশ ফাইল তৈরি করুন for_list6.sh ’ নিম্নলিখিত কোড সহ। এখানে, কমা (,) স্ট্রিং মান বিভক্ত করতে ব্যবহৃত হয়। আইএফএস ক্ষেত্র বিভাজক সেট করতে পরিবর্তনশীল ব্যবহার করা হয়।

#!/বিন/ব্যাশ
ডেটা লিস্ট='HTML5, CCS3, BootStrap, JQuery'
ফিল্ড_ সেপারেটর=$ IFS

# স্ট্রিং তালিকার জন্য অভ্যন্তরীণ ক্ষেত্র বিভাজক হিসাবে কমা সেট করুন
আইএফএস=,
জন্যঘন্টাভিতরে $ DataList;
কর
বের করে দিল $ ঘন্টা
সম্পন্ন

আইএফএস=$ Field_Separator

আউটপুট:

$বাশfor_list6.sh

উদাহরণ-7: একসাথে একাধিক স্ট্রিং অ্যারে পড়া

'নামে একটি ব্যাশ ফাইল তৈরি করুন for_list7.sh 'এবং নিম্নলিখিত স্ক্রিপ্ট যোগ করুন। এই উদাহরণে, দুটি স্ট্রিং অ্যারে সংজ্ঞায়িত করা হয়েছে এবং অন্য অ্যারেতে মিলিত হয়েছে। বাইরের লুপটি সম্মিলিত অ্যারে পড়তে ব্যবহৃত হয় এবং ভিতরের লুপ প্রতিটি অভ্যন্তরীণ অ্যারে পড়তে ব্যবহৃত হয়।

#! /বিন/শ
str_array1=('ম্যাজেন্টো 2.2.4' 'WooCommerce')
str_array2=('CodeIgnitor' 'লারাভেল')
একত্রিত করা=(str_array1 str_array2)
জন্যপরিচালিতভিতরে $ {একত্রিত [@]}
কর
eval '$ {' এ ভ্যালের জন্য$ arrItem'[@]}'; প্রতিধ্বনি করুন '$ val'; সম্পন্ন '
সম্পন্ন

আউটপুট:

$বাশfor_list7.sh

উদাহরণ-8: স্ট্রিংয়ের তালিকা পড়তে প্যাটার্ন ব্যবহার করা

নামে একটি নতুন ব্যাশ ফাইল তৈরি করুন for_list8.sh নিম্নলিখিত কোড সহ। এখানে, ' /, /' কমা ভিত্তিক স্ট্রিং মান বিভক্ত করতে প্যাটার্ন ব্যবহার করা হয়।

#! /বিন/শ

# স্ট্রিং ভেরিয়েবলের একটি তালিকা নির্ধারণ করুন
stringList= ওয়ার্ডপ্রেস, জুমলা, ম্যাজেন্টো

# বিভাজক হিসাবে কমা ব্যবহার করুন এবং প্যাটার্ন হিসাবে প্রয়োগ করুন
জন্যঘন্টাভিতরে $ {stringList //,/}
কর
বের করে দিল $ ঘন্টা
সম্পন্ন

আউটপুট:

$বাশfor_list8.sh

আশা করি, এই টিউটোরিয়ালের উদাহরণ আপনাকে এর ব্যবহার বুঝতে সাহায্য করবে লুপের জন্য স্ট্রিংগুলির তালিকা পুনরাবৃত্তি করার জন্য, এই বিষয়ে একটি ভিডিওর জন্য, নীচে দেখুন: