বিভিন্ন প্রোগ্রামিং উদ্দেশ্যে, আমাদের দুটি স্ট্রিং এর মান তুলনা করতে হবে। অন্তর্নির্মিত ফাংশন দুটি স্ট্রিং এর সমতা পরীক্ষা করার জন্য অনেক প্রোগ্রামিং ভাষায় ব্যবহৃত হয়। ব্যাশ ব্যবহার করে আপনি দুটি স্ট্রিংয়ের সমতা এবং অসমতা পরীক্ষা করতে পারেন যদি বিবৃতি == সমতা পরীক্ষা করতে ব্যবহৃত হয় এবং ! = স্ট্রিংগুলির বৈষম্য পরীক্ষা করতে ব্যবহৃত হয়। আপনি আংশিকভাবে দুটি স্ট্রিং এর মান bash এ তুলনা করতে পারেন। আপনি কিভাবে ব্যাশে স্ট্রিং মান তুলনা করতে পারেন তা এই টিউটোরিয়ালে বিভিন্ন উদাহরণ ব্যবহার করে দেখানো হয়েছে।
উদাহরণ -1: স্ট্রিং তুলনা == অপারেটর ব্যবহার করে
অন্যান্য স্ট্যান্ডার্ড প্রোগ্রামিং ভাষার মতো ব্যাশে দুটি স্ট্রিং মানের সমতা পরীক্ষা করার জন্য কোন অন্তর্নির্মিত তুলনা ফাংশন নেই। নিম্নলিখিত স্ক্রিপ্টে, দুটি স্ট্রিং ভেরিয়েবল, strval1 এবং strval2 ঘোষণা করা হয়। এই দুটি স্ট্রিং ভেরিয়েবলের ইক্যুইটি প্রথম ব্যবহার করে পরীক্ষা করা হয় যদি স্ক্রিপ্টের বিবৃতি। মুল্য strval1 দ্বিতীয়টিতে সমতা যাচাই করার জন্য একটি স্ট্রিং মানের সাথে তুলনা করা হয় যদি বিবৃতি
#!/বিন/ব্যাশ
strval1='উবুন্টু'
strval2='উইন্ডোজ'
#সমতা দুটি স্ট্রিং ভেরিয়েবল পরীক্ষা করুন
যদি [ $ strval1==$ strval2 ];তারপর
বের করে দিল 'স্ট্রিং সমান'
অন্য
বের করে দিল 'স্ট্রিং সমান নয়'
থাকা
#স্ট্রিং মান সহ একটি ভেরিয়েবলের সমতা পরীক্ষা করুন
যদি [ $ strval1=='উবুন্টু' ];তারপর
বের করে দিল 'লিনাক্স অপারেটিং সিস্টেম'
অন্য
বের করে দিল 'উইন্ডোজ অপারেটিং সিস্টেম'
থাকা
আউটপুট:
প্রথম তুলনা সমান নয় এবং দ্বিতীয় তুলনা সমান।
উদাহরণ -২: স্ট্রিং তুলনা! = অপারেটর ব্যবহার করে
দুটি স্ট্রিং ভেরিয়েবলের বৈষম্য নিম্নলিখিত উদাহরণে পরীক্ষা করা হয়েছে। এখানে দুটি মান সমান নয়। সুতরাং, যদি শর্ত সত্য হবে এবং উইন্ডোজ অপারেটিং সিস্টেম মুদ্রণ করবে।
#!/বিন/ব্যাশstrval1='উবুন্টু'
strval2='উইন্ডোজ'
#স্ট্রিং মান সহ একটি ভেরিয়েবলের বৈষম্য পরীক্ষা করুন
যদি [ $ strval2 !='উবুন্টু' ];তারপর
বের করে দিল 'উইন্ডোজ অপারেটিং সিস্টেম'
অন্য
বের করে দিল 'লিনাক্স অপারেটিং সিস্টেম'
থাকা
আউটপুট:
উদাহরণ-3: আংশিক স্ট্রিং তুলনা
আপনি ব্যাশ স্ক্রিপ্টে ওয়াইল্ড কার্ড অক্ষর ব্যবহার করে আংশিক মান তুলনা করতে পারেন। নিম্নলিখিত স্ক্রিপ্টে, * আংশিক মিলের জন্য ওয়াইল্ড কার্ড অক্ষর হিসাবে ব্যবহৃত হয়। স্ট্রিং ভেরিয়েবল, strval শব্দ ধারণ করে ইন্টারনেট। সুতরাং, প্রথম যদি স্ক্রিপ্টটি সত্য এবং মুদ্রণ হবে আংশিক মিল । বাশ কেস সংবেদনশীল। এই জন্য, দ্বিতীয় যদি স্ক্রিপ্টের ইন্টারনেটকে আংশিক স্ট্রিং হিসাবে ব্যবহার করার জন্য মিথ্যা ফিরিয়ে দেবে যা অক্ষর অনুযায়ী তুলনা দ্বারা সমান নয়।
#!/বিন/ব্যাশstrval='মাইক্রোসফট ইন্টারনেট এক্সপ্লোরার'
যদি [[ $ strval==*ইন্টারনেট* ]];
তারপর
বের করে দিল 'আংশিক মিল'
অন্য
বের করে দিল 'মিল নেই'
থাকা
যদি [[ $ strval==*ইন্টারনেট* ]];
তারপর
বের করে দিল 'আংশিক মিল'
অন্য
বের করে দিল 'মিল নেই'
থাকা
আউটপুট:
উদাহরণ-4: ব্যবহারকারীর ইনপুট মানের সাথে স্ট্রিং তুলনা করুন
কখনও কখনও, আমরা প্রোগ্রামিং উদ্দেশ্যে নির্দিষ্ট স্ট্রিং মান সঙ্গে ব্যবহারকারী দ্বারা নেওয়া স্ট্রিং মান তুলনা করতে হবে। নিচের উদাহরণে, ব্যবহারকারীর কাছ থেকে একটি স্ট্রিং ডেটা ইনপুট হিসেবে নেওয়া হবে এবং ডেটার বৈষম্যকে একটি নির্দিষ্ট মানের সঙ্গে তুলনা করা হবে। যদি শর্তটি সত্য হয় তবে এটি মুদ্রণ করবে পাওয়া কোন রেকর্ড , অন্যথায় এটি মুদ্রণ করবে রেকর্ড পাওয়া গেছে ।
#!/বিন/ব্যাশবের করে দিল 'আপনার নাম প্রবেশ করুন'
পড়ুনইনপুট
যদি [ $ ইনপুট !='Fahmida' ];
তারপর
বের করে দিল 'পাওয়া কোন রেকর্ড'
অন্য
বের করে দিল 'রেকর্ড পাওয়া গেছে'
থাকা
আউটপুট:
এই পাঠের ভিডিও এখানে:
স্পষ্ট বোঝার সাথে উপরের উদাহরণগুলি শেষ করার পরে ব্যাশে স্ট্রিং তুলনা কাজটি আপনার জন্য সহজ হবে।