অ্যান্ড্রয়েড

বাশ যদি .. অন্য বিবৃতি

DIY Room Decor! 10 DIY Room Decorating Ideas for Teenagers (DIY Wall Decor, Pillows, etc.)

DIY Room Decor! 10 DIY Room Decorating Ideas for Teenagers (DIY Wall Decor, Pillows, etc.)

সুচিপত্র:

Anonim

সিদ্ধান্ত গ্রহণ কম্পিউটার প্রোগ্রামিংয়ের অন্যতম মৌলিক ধারণা। অন্য যে কোনও প্রোগ্রামিং ল্যাঙ্গুয়েজের মতো, if , if..else , if..elif..else এবং if..elif..else if বাশ-এর ​​বিবৃতি নির্দিষ্ট শর্তের ভিত্তিতে কোড কার্যকর করতে ব্যবহার করা যেতে পারে।

এই টিউটোরিয়ালে, আমরা if বিবৃতিগুলি বিবরণী দেয় এবং আপনার শেল স্ক্রিপ্টগুলিতে সেগুলি কীভাবে ব্যবহার করতে হয় তা আপনাকে দেখাব of

if বিবৃতি

শর্তসাপেক্ষে বিভিন্ন রূপ থাকতে পারে if বাশ Bash বিবৃতি নিম্নলিখিত ফর্ম গ্রহণ করে if সবচেয়ে মৌলিক:

if TEST-COMMAND then STATEMENTS fi

if বিবৃতিটি শর্তসাপেক্ষ অভিব্যক্তি এবং then কীওয়ার্ড দ্বারা অনুসরণ করা হয় if কিওয়ার্ড দিয়ে শুরু হয়। বিবৃতিটি fi কীওয়ার্ড দিয়ে শেষ হয়।

যদি TEST-COMMAND True কাছে মূল্যায়ন করে তবে STATEMENTS কার্যকর হবে। যদি TEST-COMMAND False প্রত্যাবর্তন করে তবে কিছুই ঘটে না, STATEMENTS যায়।

সাধারণভাবে, আপনার কোড এবং ফাঁকা রেখার সাথে পৃথক কোড ব্লক যুক্ত করতে সর্বদা একটি ভাল অনুশীলন। বেশিরভাগ লোক 4-স্পেস বা 2-স্পেস ইনডেন্টেশন ব্যবহার করতে পছন্দ করে। সূচি এবং ফাঁকা লাইনগুলি আপনার কোডকে আরও পঠনযোগ্য এবং সংগঠিত করে।

আসুন নীচের উদাহরণ স্ক্রিপ্টটি দেখুন যা প্রদত্ত সংখ্যা 10 এর চেয়ে বেশি কিনা তা পরীক্ষা করে।

#!/bin/bash echo -n "Enter a number: " read VAR if] then echo "The variable is greater than 10." fi

কোডটি কোনও ফাইলে সংরক্ষণ করুন এবং কমান্ড লাইন থেকে চালান:

bash test.sh

স্ক্রিপ্টটি আপনাকে একটি নম্বর প্রবেশের অনুরোধ জানাবে। উদাহরণস্বরূপ, আপনি 15 লিখুন, test কমান্ডটি true মূল্যায়ন করবে কারণ 15 10 এর চেয়ে বড়, এবং echo ক্লকের অভ্যন্তরে echo কমান্ড কার্যকর হবে।

The variable is greater than 10.

if..else বিবৃতি

বাশ if..else বিবৃতিটি নিম্নলিখিত রূপটি গ্রহণ করে:

if TEST-COMMAND then STATEMENTS1 else STATEMENTS2 fi

যদি TEST-COMMAND True মূল্যায়ন করে তবে STATEMENTS1 কার্যকর করা হবে। অন্যথায়, যদি TEST-COMMAND False প্রত্যাবর্তন করে তবে STATEMENTS2 কার্যকর হবে। বিবৃতিতে আপনার else ধারা থাকতে পারে।

আগের উদাহরণ স্ক্রিপ্টে else একটি ধারা যুক্ত করা যাক:

#!/bin/bash echo -n "Enter a number: " read VAR if] then echo "The variable is greater than 10." else echo "The variable is equal or less than 10." fi

if..elif..else বিবৃতি

বাশ if..elif..else বিবৃতিটি নিম্নলিখিত রূপটি গ্রহণ করে:

if TEST-COMMAND1 then STATEMENTS1 elif TEST-COMMAND2 then STATEMENTS2 else STATEMENTS3 fi

যদি TEST-COMMAND1 মূল্যায়ন করে তবে STATEMENTS1 কার্যকর করা হবে। TEST-COMMAND2 যদি TEST-COMMAND2 মূল্যায়ন করে তবে STATEMENTS2 কার্যকর হবে। যদি পরীক্ষার কোনও STATEMENTS2 True মূল্যায়ন না করে তবে STATEMENTS2 কার্যকর করা হবে STATEMENTS2

বিবৃতিতে আপনার এক বা একাধিক elif ক্লজ থাকতে পারে। else ধারাটি.চ্ছিক।

শর্তগুলি ক্রমানুসারে মূল্যায়ন করা হয়। একবার যখন একটি শর্ত ফেরত দেয় True বাকী শর্তগুলি সম্পাদিত হয় না এবং প্রোগ্রাম নিয়ন্ত্রণ if বিবৃতিগুলির শেষে চলে যায়।

আগের স্ক্রিপ্টে একটি elif ক্লজ যুক্ত করা যাক:

#!/bin/bash echo -n "Enter a number: " read VAR if] then echo "The variable is greater than 10." elif] then echo "The variable is equal to 10." else echo "The variable is less than 10." fi

বিবৃতি দেওয়া হয়

স্টেটমেন্ট if স্টেটমেন্টের মধ্যে if if বাশ আপনাকে বাসা বাঁধার অনুমতি দেয়। স্টেটমেন্ট if অন্যের ভিতরে if আপনি একাধিক রাখতে if

নিম্নলিখিত স্ক্রিপ্টটি আপনাকে তিনটি সংখ্যা লিখতে অনুরোধ করবে এবং তিনটি সংখ্যার মধ্যে বৃহত্তম সংখ্যাটি মুদ্রণ করবে।

#!/bin/bash echo -n "Enter the first number: " read VAR1 echo -n "Enter the second number: " read VAR2 echo -n "Enter the third number: " read VAR3 if] then if] then echo "$VAR1 is the largest number." else echo "$VAR3 is the largest number." fi else if] then echo "$VAR2 is the largest number." else echo "$VAR3 is the largest number." fi fi

আউটপুটটি কেমন দেখাচ্ছে তা এখানে:

Enter the first number: 4 Enter the second number: 7 Enter the third number: 2 7 is the largest number. নেস্টেড if বিবৃতি ব্যবহার না করে, সাধারণত কেস স্টেটমেন্টটি ব্যবহার করা আরও দক্ষ।

একাধিক শর্ত

লজিক্যাল OR এবং AND অপারেটরগুলি আপনাকে বিবৃতিগুলিতে একাধিক শর্ত ব্যবহার করার অনুমতি দেয়।

তিনটি সংখ্যার মধ্যে বৃহত্তম সংখ্যা মুদ্রণের জন্য এখানে স্ক্রিপ্টের আরেকটি সংস্করণ রয়েছে। এই সংস্করণে, নেস্টেড if স্টেটমেন্টগুলির পরিবর্তে আমরা লজিকাল AND ( AND && ) অপারেটরটি ব্যবহার করব।

#!/bin/bash echo -n "Enter the first number: " read VAR1 echo -n "Enter the second number: " read VAR2 echo -n "Enter the third number: " read VAR3 if] &&] then echo "$VAR1 is the largest number." elif] &&] then echo "$VAR2 is the largest number." else echo "$VAR3 is the largest number." fi

পরীক্ষা অপারেটর

বাশ-এ, test কমান্ড নিম্নলিখিত সিনট্যাক্স ফর্মগুলির একটি গ্রহণ করে:

test EXPRESSION]

পরীক্ষার এক্সপ্রেশনটিকে উপেক্ষা করার জন্য লজিকাল NOT ( ! ) অপারেটরটি ব্যবহার করুন। স্ট্রিংগুলির তুলনা করার সময় কোনও শব্দ বিভাজন বা গ্লোববিংয়ের সমস্যা এড়াতে সর্বদা একক বা ডাবল উদ্ধৃতি ব্যবহার করুন।

নীচে সর্বাধিক ব্যবহৃত কিছু অপারেটর রয়েছে:

  • -n VAR - VAR এর দৈর্ঘ্য শূন্যের চেয়ে বেশি হলে সত্য। -z VAR - VAR খালি থাকলে সত্য। STRING1 = STRING2 - সত্য [STRING1 এবং STRING2 সমান। STRING1 != STRING2 - সত্য STRING1 এবং STRING2 সমান নয়। INTEGER1 -eq INTEGER2 - সত্য INTEGER1 এবং INTEGER2 সমান। INTEGER1 -gt INTEGER2 - সত্য INTEGER1 INTEGER2 এর চেয়ে বড়। INTEGER1 -lt INTEGER2 - সত্য INTEGER1 INTEGER2 এর চেয়ে কম। INTEGER1 -ge INTEGER2 - সত্য INTEGER1 INTEGER2 এর চেয়ে সমান বা বড়। INTEGER1 -le INTEGER2 - সত্য INTEGER1 INTEGER1 -le INTEGER2 চেয়ে সমান বা কম। -h FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং এটি একটি প্রতীকী লিঙ্ক হয়। -r FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং পাঠযোগ্য হয়। - আমরা FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং লিখিত হয়। -x FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং কার্যকর হয়। -d FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং এটি ডিরেক্টরি হয়। -e FILE - যদি ফাইলটি বিদ্যমান থাকে এবং প্রকারের (নোড, ডিরেক্টরি, সকেট ইত্যাদি) নির্বিশেষে কোনও ফাইল হয় তবে তা সত্য। -f FILE - সত্য যদি ফাইলটি বিদ্যমান থাকে এবং নিয়মিত ফাইল হয় (ডিরেক্টরি বা ডিভাইস নয়)।

উপসংহার

if , if..else এবং if..elif..else বিবৃতি আপনাকে প্রদত্ত শর্তাদি মূল্যায়ন করে বাশ স্ক্রিপ্টের সম্পাদনের প্রবাহ নিয়ন্ত্রণ করতে দেয়।

বাশ টার্মিনাল