Bash:
স্ট্রিং এর দৈর্ঘ্য চিহ্নিত করা
কিভাবে:
ব্যাশে কাজটি সম্পন্ন করতে # প্রতীকটি ব্যবহার করা হয়। প্যারামিটার প্রসারণের সাথে এটি ব্যবহার করুন। এখানে কিভাবে:
my_string="Hello, World!"
string_length=${#my_string}
echo $string_lengthনমুনা আউটপুট:
13গভীর ডাইভ
পুরানো দিনে, লোকেরা expr বা বাইরের টুল যেমন wc -m ব্যবহার করত, কিন্তু ব্যাশ নির্মিত বৈশিষ্ট্যগুলি খেলার চিত্র পরিবর্তন করেছে। ${#var} সিনট্যাক্সটি ব্যাশে প্যারামিটার প্রসারণে প্রবর্তিত একটি অংশ। এটি দ্রুত ও দক্ষ কারণ এটি একটি সাবশেল শুরু করেনা অথবা বাইরের একটি প্রোগ্রাম কল করেনা।
বিকল্প? অবশ্যই, তোমার আছে:
expr length "$my_string"আপনাকে একই ফলাফল দেয়, কিন্তু এটা একটু পুরানো স্কুলের।echo -n $my_string | wc -mwcব্যবহার করে গণনা করে, কিন্তু সাধারণ কাজের জন্য এটি অতিরিক্ত।
বিস্তারিত, বিস্তারিত… যখন আপনি ${#my_string} ব্যবহার করেন, এটি ডিফল্ট হিসাবে আপনাকে বাইটে দৈর্ঘ্য দেয়। যদি আপনার টেক্সট ইউনিকোডের দিকে হাঁটে, আপনাকে মাল্টি-বাইট অক্ষরগুলির বিবেচনা করতে হবে। সেই সময় বিষয়গুলো আরও জটিল হয়ে ওঠে।
আরও দেখুন
man bash এর সাথে ম্যান পেজগুলিতে ডাইভ নিয়ে প্যারামিটার প্রসারণের সূক্ষ্ম বৃত্তান্তে প্রবেশ করুন। যারা বেসিক ASCII এর বাইরে স্ট্রিং সম্পর্কে দেখছেন, উন্নত Bash-Scripting গাইড কিছু উপদেশ দেয়: https://www.tldp.org/LDP/abs/html/. এবং শিক্ষার জন্য ভালোবাসা রাখুন, https://www.gnu.org/software/bash/manual/ এ নজর রাখুন ব্যাশ সম্পর্কে সর্বশেষ তথ্যের জন্য।