باش کیس اسٹیٹمنٹ کا استعمال کیسے کریں۔

How Use Bash Case Statement



بش کیس کے بیانات if-else بیانات کی طرح ہیں لیکن آسان اور آسان ہیں۔ یہ متعدد اقدار کے خلاف ایک متغیر سے ملنے میں مدد کرتا ہے۔ اس کا استعمال اس وقت کیا جاتا ہے جب آپ کو کئی ایلف بیانات کے ساتھ IF-else بیانات کی ضرورت ہوتی ہے۔

اس آرٹیکل میں ، ہم وضاحت کریں گے کہ لینکس OS میں مثال کے ساتھ باش کیس اسٹیٹمنٹ کو کیسے استعمال کیا جائے۔







بش کیس کے بیان کا نحو۔

بش کیس کے بیان کا نحو یہ ہے:



نحو:



معاملہ $ متغیر میں
پیٹرن-)
احکامات
؛؛
پیٹرن-)
احکامات
؛؛
پیٹرن-)
احکامات
؛؛
پیٹرن- N)
احکامات
؛؛
*)
احکامات
؛؛
ایساک
  • کیس کا بیان کیس سے شروع ہوتا ہے اور ایساک پر ختم ہوتا ہے۔
  • پیٹرن کو ختم کرنے کے لیے استعمال کیا جاتا ہے۔ متعدد نمونوں کو الگ کرنے کے لیے ، آپریٹر استعمال کیا جاتا ہے جیسا کہ ذیل میں دکھایا گیا ہے:
معاملہ $ متغیر میں
پیٹرن-|پیٹرن-)
احکامات
....
....
؛؛
پیٹرن-|پیٹرن-)
احکامات
....
....
؛؛
  • احکامات کے ساتھ نمونہ شق کے طور پر جانا جاتا ہے اور ہر شق (؛) کے ساتھ ختم ہوتی ہے۔
  • ستارے کی علامت* ڈیفالٹ کیس کی وضاحت کے لیے استعمال کی جا سکتی ہے۔
  • باش کیس کا بیان پہلے ان پٹ $ متغیر کو مختلف نمونوں سے مماثل کرتا ہے۔ اگر ایک پیٹرن مماثل ہے ، تو ڈبل سیمیکولن (؛) تک کمانڈ کا متعلقہ سیٹ عمل میں لایا جائے گا۔

مثال 1:

مندرجہ ذیل مثال بش کیش اسٹیٹمنٹ کے بارے میں ہے جس میں وہ صارف سے مہینے کا نام درج کرنے کو کہتا ہے۔ اگر یہ ان پٹ اسکرپٹ میں متعین کردہ نمونوں سے مماثل ہے تو متعلقہ ایکو کمانڈ پر عمل درآمد کیا جائے گا۔ ایکو کمانڈ اس مہینے کے بین الاقوامی ایونٹ کے بارے میں معلومات ظاہر کرے گا۔





اس اسکرپٹ کو استعمال کرنے کے لیے ، ایک سادہ ٹیکسٹ فائل بنائیں اسے .sh فائل کی توسیع کے ساتھ نام دیں۔ اس میں درج ذیل اسکرپٹ شامل کریں اور اسے محفوظ کریں۔ پھر ٹرمینل میں درج ذیل کمانڈ کو چلاتے ہوئے اس فائل کو اجازت دینے کے لیے تفویض کریں:

$سودو chmod 777۔filename.sh

اس باش فائل کو چلانے کے لیے ، بس چلائیں ./ اس کے بعد باش فائل کا نام درج ذیل ہے:



$./filename.sh

جب آپ اسکرپٹ پر عملدرآمد کرتے ہیں ، آپ سے ان پٹ کے طور پر مہینے کا نام درج کرنے کو کہا جائے گا۔ اگر مہینے کا نام مماثل ہے ، تو وہ اس مخصوص مہینے میں متعلقہ واقعہ دکھائے گا ، ورنہ کوئی مماثل معلومات نہیں دکھائی جائے گی۔

نوٹ کریں کہ shopt -s nocasematch اس کے کیس سے قطع نظر پیٹرن سے ملنے کے لیے استعمال ہوتا ہے۔

دکانیں nocasematch

باہر پھینک دیا 'مہینے کا نام درج کریں'
پڑھیںمہینہ
معاملہ $ مہینہ۔ میں
جنوری۔)
باہر پھینک دیا 24 جنوری تعلیم کا عالمی دن۔
؛؛
فروری۔)
باہر پھینک دیا 20 فروری سماجی انصاف کا عالمی دن۔
؛؛
مارچ۔)
باہر پھینک دیا 8 مارچ خواتین کا عالمی دن۔
؛؛
اپریل۔)
باہر پھینک دیا 7 اپریل صحت کا عالمی دن
؛؛
مئی)
باہر پھینک دیا 15 مئی خاندانوں کا عالمی دن
؛؛
جون)
باہر پھینک دیا 20 جون پناہ گزینوں کا عالمی دن
؛؛
جولائی۔)
باہر پھینک دیا 11 جولائی عالمی آبادی کا دن
؛؛
*)
باہر پھینک دیا 'کوئی مماثل معلومات نہیں ملی'
؛؛
ایساک

مثال 2:

مندرجہ ذیل مثال بش کیش اسٹیٹمنٹ کے بارے میں ہے جس میں صارف سے کہا جاتا ہے کہ وہ ملک کا نام داخل کرے۔ اگر یہ ان پٹ اسکرپٹ میں متعین کردہ نمونوں سے مماثل ہے تو متعلقہ ایکو کمانڈ پر عمل درآمد کیا جائے گا۔ ایکو کمانڈ اس مخصوص ملک کے دارالحکومت کے بارے میں معلومات ظاہر کرے گا۔

اس اسکرپٹ کو استعمال کرنے کے لیے ، اوپر دی گئی مثال میں بیان کردہ اسی طریقے پر عمل کریں۔ ایک بار مکمل ہونے کے بعد ، اسکرپٹ پر عمل کریں ، اور آپ سے ان پٹ کے طور پر ملک کا نام درج کرنے کو کہا جائے گا۔ اگر ملک کا نام پہلے سے طے شدہ ملک کے ناموں کے ساتھ مماثل ہے تو وہ اس ملک کے دارالحکومت کا نام ظاہر کرے گا ، بصورت دیگر ، معلومات دستیاب نہیں پیغام ظاہر ہوگا۔

#!/bin/bash
دکانیں nocasematch
باہر پھینک دیا 'ایک ملک کا نام درج کریں:'
پڑھیںملک

باہر پھینک دیا کا دارالحکومت۔$ countryہے '
معاملہ $ country میں
پاکستان)
باہر پھینک دیا 'اسلام آباد'
؛؛
فجی)
باہر پھینک دیا 'خشک'
؛؛
برطانیہ| 'متحدہ سلطنت یونائیٹڈ کنگڈم')
باہر پھینک دیا 'لندن'
؛؛
ترکی)
باہر پھینک دیا 'انقرہ'
؛؛
استعمال کرتا ہے۔)
باہر پھینک دیا 'واشنگٹن ڈی سی'
؛؛
*)
باہر پھینک دیا 'معلومات دستیاب نہیں'
؛؛
ایساک
باہر پھینک دیا ''

باش کیس کے بیانات باز سکرپٹ کو پڑھنے اور سمجھنے میں آسان بناتے ہیں۔ اس آرٹیکل میں ، ہم نے کیس کیس کے بیانات لکھنے اور استعمال کرنے کے طریقے کا احاطہ کیا ہے۔ اب آپ کیس اسٹیٹمنٹس کے استعمال سے ایک اور قسم کا کثیر درجے کا بیان لکھ سکتے ہیں۔