ব্যাশ স্ক্রিপ্টগুলি আপনাকে কমান্ড লাইনের কাজগুলি স্বয়ংক্রিয় করার একটি সুবিধাজনক উপায় দেয়।
ব্যাশের সাহায্যে, আপনি অন্যান্য স্ক্রিপ্টিং বা প্রোগ্রামিং ভাষায় যা করতে চান একই জিনিস অনেকগুলি করতে পারেন। আপনি ভেরিয়েবল তৈরি এবং ব্যবহার করতে পারেন, লুপ চালাতে পারেন, শর্তসাপেক্ষ যুক্তি ব্যবহার করতে পারেন এবং অ্যারেতে ডেটা সংরক্ষণ করতে পারেন।
যদিও কার্যকারিতা খুব পরিচিত হতে পারে, ব্যাশের সিনট্যাক্স জটিল হতে পারে। এই নিবন্ধে, আপনি কীভাবে অ্যারে ঘোষণা করবেন এবং তারপরে আপনার কোডে কীভাবে ব্যবহার করবেন তা শিখবেন।
ব্যাশে একটি অ্যারে কীভাবে ঘোষণা করবেন
ব্যাশে একটি অ্যারে ঘোষণা করা সহজ, তবে সিনট্যাক্সে মনোযোগ দিন। আপনি যদি অন্য ভাষায় প্রোগ্রামিং করতে অভ্যস্ত হন, তাহলে কোডটি পরিচিত মনে হতে পারে, কিন্তু সূক্ষ্ম পার্থক্য রয়েছে যা মিস করা সহজ।
আপনার অ্যারে ঘোষণা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
- আপনার অ্যারের একটি নাম দিন
- একটি সমান চিহ্ন সহ সেই পরিবর্তনশীল নামটি অনুসরণ করুন। সমান চিহ্ন উচিত নয় এটির চারপাশে কোনো ফাঁকা আছে
- অ্যারেটিকে বন্ধনী -এ আবদ্ধ করুন (জাভাস্ক্রিপ্টের মতো বন্ধনী নয়)
- উদ্ধৃতি ব্যবহার করে আপনার স্ট্রিং টাইপ করুন, কিন্তু কোনও কমা ছাড়া তাদের মধ্যে
আপনার অ্যারে ঘোষণাটি এরকম কিছু দেখাবে:
myArray=("cat" "dog" "mouse" "frog)
এটাই! এটা খুবই সহজ।
কিভাবে ব্যাশে একটি অ্যারে অ্যাক্সেস করবেন
আপনার অ্যারের মাধ্যমে লুপ করার জন্য কয়েকটি ভিন্ন উপায় রয়েছে। আপনি হয় উপাদানগুলির মধ্যে দিয়ে লুপ করতে পারেন, অথবা সূচকগুলির মাধ্যমে লুপ করতে পারেন৷
কিভাবে অ্যারে এলিমেন্টের মাধ্যমে লুপ করবেন
অ্যারের উপাদানগুলি লুপ করার জন্য, আপনার কোডটিকে এইরকম কিছু দেখতে হবে:
${myArray[@]} এ str এর জন্যfor str in ${myArray[@]}; do
echo $str
done
এটি ভেঙে ফেলার জন্য:এটি কিছুটা forEach
ব্যবহার করার মতো জাভাস্ক্রিপ্টে। অ্যারের (myArray) প্রতিটি স্ট্রিং (str) এর জন্য, সেই স্ট্রিংটি প্রিন্ট করুন।
এই লুপের আউটপুট এইরকম দেখায়:
cat
dog
mouse
frog
দ্রষ্টব্য :@
বর্গাকার বন্ধনীতে চিহ্ন নির্দেশ করে যে আপনি সমস্ত এর মাধ্যমে লুপ করছেন অ্যারের উপাদানগুলির। আপনি যদি এটি ছেড়ে দিতে চান এবং ${myArray}-এ str এর জন্য লিখুন , শুধুমাত্র অ্যারের প্রথম স্ট্রিং মুদ্রিত হবে।
অ্যারে সূচকের মাধ্যমে কীভাবে লুপ করবেন
বিকল্পভাবে, আপনি অ্যারের সূচকগুলি লুপ করতে পারেন। এটি একটি এর জন্য
এর মত জাভাস্ক্রিপ্টে লুপ, এবং আপনি যখন প্রতিটি উপাদানের সূচক অ্যাক্সেস করতে সক্ষম হতে চান তখন এটির জন্য দরকারী।
এই পদ্ধতিটি ব্যবহার করার জন্য, আপনার কোডটি নিম্নলিখিতগুলির মতো দেখতে হবে:
for i in ${!myArray[@]}; do
echo "element $i is ${myArray[$i]}"
done
আউটপুট এইরকম দেখাবে:
element 0 is cat
element 1 is dog
element 2 is mouse
element 3 is frog
দ্রষ্টব্য :myArray
-এর শুরুতে বিস্ময়বোধক চিহ্ন পরিবর্তনশীল নির্দেশ করে যে আপনি সূচকগুলি অ্যাক্সেস করছেন অ্যারের এবং উপাদান নিজেদের না. এটি বিভ্রান্তিকর হতে পারে যদি আপনি বিস্ময়বোধক চিহ্নে অভ্যস্ত হন যা নেতিবাচকতা নির্দেশ করে, তাই এটিতে সতর্ক মনোযোগ দিন।
আরেকটি নোট :ব্যাশ সাধারণত ভেরিয়েবলের জন্য কোঁকড়া ধনুর্বন্ধনীর প্রয়োজন হয় না, তবে এটি অ্যারের জন্য করে। সুতরাং আপনি লক্ষ্য করবেন যে আপনি যখন একটি অ্যারে উল্লেখ করেন, আপনি সিনট্যাক্স ${myArray}
দিয়ে তা করেন , কিন্তু যখন আপনি একটি স্ট্রিং বা সংখ্যা উল্লেখ করেন, আপনি কেবল একটি ডলার চিহ্ন ব্যবহার করেন:$i
.
উপসংহার
ব্যাশ স্ক্রিপ্টগুলি স্বয়ংক্রিয় কমান্ড লাইন আচরণ তৈরির জন্য দরকারী, এবং অ্যারেগুলি একটি দুর্দান্ত সরঞ্জাম যা আপনি একাধিক ডেটা সংরক্ষণ করতে ব্যবহার করতে পারেন।
এগুলি ঘোষণা করা এবং ব্যবহার করা কঠিন নয়, তবে এটি অন্যান্য ভাষার থেকে আলাদা, তাই ভুলগুলি এড়াতে গভীর মনোযোগ দিন৷