আমরা আগে ব্যাশে ভেরিয়েবল ব্যবহার করে কভার করেছি – এই নিবন্ধটি ব্যাশ অ্যারে ব্যাখ্যা করবে ভেরিয়েবল এবং কিছু উদাহরণ ব্যবহার প্রদান করে।
একটি অ্যারে কি
অ্যারে হল এক ধরনের ভেরিয়েবল যা একাধিক মান ধরে রাখতে পারে। এটি মানগুলির একটি তালিকা যা আপনি লুপ করতে পারেন এবং প্রতিটি পৃথক মানের উপর ক্রিয়াকলাপ সম্পাদন করতে পারেন৷
৷উদাহরণস্বরূপ, আপনি ফাইলগুলির একটি তালিকায় একটি ক্রিয়া সম্পাদন করতে চাইতে পারেন। একটি অ্যারে হিসাবে সেই তালিকাটি সংরক্ষণ করে, আপনি এতে ফাইলের নামগুলি লুপ করতে পারেন এবং প্রতিটিতে ক্রিয়া সম্পাদন করতে পারেন৷
অ্যারেগুলিকে ইন্ডেক্স করা হয়, অ্যারের প্রতিটি আইটেমের অবস্থান 0 থেকে শুরু হওয়া একটি সংখ্যা দ্বারা প্রতিনিধিত্ব করা হয় .
ব্যাশ অ্যারেগুলির প্রয়োজন নেই যে অ্যারের উপাদানগুলিকে পরবর্তীভাবে সূচীবদ্ধ করা হবে – বা ফাঁক ছাড়া সংলগ্ন – আপনি অ্যারে পজিশন 0, 3, 17-এ মান রাখতে পারেন যার মধ্যে কোনও মান নেই, উদাহরণস্বরূপ।
আপনি লিনাক্স ডকুমেন্টেশন প্রজেক্টে ব্যাশ অ্যারে সম্পর্কে আরও জানতে পারেন।
ব্যাশ অ্যারে তৈরি করা হচ্ছে
ব্যাশ অ্যারেতে যেকোনো ধরনের ব্যাশ ভেরিয়েবল থাকতে পারে – পাথ, স্ট্রিং, সংখ্যা – এমনকি অন্যান্য অ্যারেও।
কেন আপনার শেল স্ক্রিপ্টের স্ট্রিংগুলিতে ফাইল পাথগুলি মোড়ানো উচিত
অ্যারে ঘোষণা করার জন্য বিভিন্ন পদ্ধতি রয়েছে, নীচের রূপরেখা।
পরোক্ষ ঘোষণা
অ্যারে উপাদানের মান নির্ধারণ করে পরোক্ষভাবে অ্যারে ঘোষণা করা যেতে পারে – প্রদত্ত মান সহ অ্যারে উপাদানের সাথে অ্যারে তৈরি করা হবে।
ARRAYNAME[INDEX]=VALUE
যেমন:
#!/bin/bash peopleArray[3]="Tom"
অ্যারে peopleArray অ্যারেতে একটি মান বরাদ্দ করা হলে স্বয়ংক্রিয়ভাবে (পরোক্ষভাবে) তৈরি হবে – এই ক্ষেত্রে, "টম" মানটি নতুন তৈরি করা peopleArray-এ ইনডেক্স 3-এ বরাদ্দ করা হয় .
সরাসরি ঘোষণা
ডিক্লেয়ার কমান্ডটি একটি অ্যারে সংজ্ঞায়িত করতেও ব্যবহার করা যেতে পারে:
declare -a ARRAYNAME
যেমন:
declare -a peopleArray
এটি peopleArray নামে একটি খালি অ্যারে তৈরি করবে .
কম্পাউন্ড অ্যাসাইনমেন্টের মাধ্যমে তৈরি করা হচ্ছে
এই পদ্ধতিটি আপনি সম্ভবত সবচেয়ে বেশি ব্যবহার করবেন। এটি ইতিমধ্যে নির্ধারিত মানগুলির সাথে একটি অ্যারে তৈরি করে৷
৷ARRAYNAME=(value1 value2 ...)
এটি ভেরিয়েবল নামের অ্যারের মান নির্ধারণ করে। অ্যারের মানগুলি ()-এ রয়েছে (স্ট্যান্ডার্ড বন্ধনী) এবং স্পেস দ্বারা বিভক্ত। শূন্যস্থান ধারণকারী মান উদ্ধৃত করা উচিত।
যেমন:
peopleArray=("Tom", "Bill", "Theodore Baker Sr.")
একটি অ্যারেতে মান বরাদ্দ করা
একটি অ্যারের শেষে একটি নতুন মান যোগ করা
একটি অ্যারেতে একটি মান যোগ করতে, নির্দিষ্ট কোনো সূচক ছাড়াই মান নির্ধারণ করুন:
ARRAYNAME[]=VALUE
যেমন:
peopleArray[]="Tony"
একটি অ্যারেতে মান প্রতিস্থাপন করা হচ্ছে
একটি মান প্রতিস্থাপন করতে, বর্তমান মানের সূচকে মানটিকে ওভাররাইট করুন।
উদাহরণস্বরূপ, যদি আপনার সূচক 7-এ একটি মান সহ একটি অ্যারে থাকে যা আপনি প্রতিস্থাপন করতে চান:
peopleArray[7]="Tony"
একটি অ্যারেতে মান মুছে ফেলা হচ্ছে
আনসেট ব্যবহার করে একটি অ্যারে থেকে একটি মান মুছুন কমান্ড এবং অ্যারে সূচক নির্দিষ্ট করা:
unset ARRAYNAME[INDEX]
যেমন:
unset peopleArray[1]
…peopleArray অ্যারের দ্বিতীয় মানটি মুছে ফেলবে .
অ্যারে মান অ্যাক্সেস করা
একটি অ্যারেতে মান অ্যাক্সেস করতে, আপনাকে অবশ্যই কোঁকড়া বন্ধনী ব্যবহার করতে হবে – অন্যথায়, ব্যাশ অ্যারে সূচক ধারণকারী বন্ধনীগুলিকে সঠিকভাবে ব্যাখ্যা করবে না:
echo ${ARRAYNAME[INDEX]}
যেমন:
#!/bin/bash peopleArray=("Tom", "Bill", "Theodore Baker Sr.") echo ${peopleArray[0]}
…আউটপুট হবে:
Tom
যেখানে শেষ লাইন যদি হয়:
echo $peopleArray[0]
লুপিং অ্যারে
আপনি অ্যারেগুলির সাথে সবচেয়ে সাধারণ জিনিসটি প্রতিটি উপাদানের উপর ক্রিয়াকলাপ সম্পাদন করতে তাদের মাধ্যমে লুপ করবেন। আমরা অনেক এগিয়ে আছি এবং ইতিমধ্যেই এই নিবন্ধটি কভার করেছি৷
৷