انڈروئد

بش اگر .. دوسرا بیان

Ù...غربية Ù...ع عشيقها في السرير، شاهد بنفسك

Ù...غربية Ù...ع عشيقها في السرير، شاهد بنفسك

فہرست کا خانہ:

Anonim

فیصلہ سازی کمپیوٹر پروگرامنگ کے سب سے بنیادی تصورات میں سے ایک ہے۔ کسی بھی دوسری پروگرامنگ زبان کی طرح ، if ، if ، if..else ، if..elif..else اور if..elif..else if if..elif..else میں بیانات کو کسی خاص حالت کی بنیاد پر کوڈ پر عمل درآمد کرنے کے لئے استعمال کیا جاسکتا ہے۔

اس ٹیوٹوریل میں ، ہم if بیانات بیان کرتے ہیں اور آپ کو اپنی شیل اسکرپٹس میں ان کا استعمال کرنے کا طریقہ بتاتے ہیں تو آپ باش کی بنیادی باتوں پر غور کریں گے۔

if بیان

if شرطوں کی مختلف شکلیں ہوسکتی ہیں تو باش۔ سب سے بنیادی if بیان مندرجہ ذیل شکل اختیار کرتا ہے:

if TEST-COMMAND then STATEMENTS fi

if بیان کی شروعات اس مطلوبہ الفاظ سے ہوتی ہے جس کے بعد مشروط اظہار اور اس کے then ورڈ ہوتا ہے۔ بیان 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 test کرے گی کیونکہ 15 10 سے زیادہ ہے ، اور اس then شق کے اندر 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 کا TEST-COMMAND1 جائزہ لیا گیا تو STATEMENTS1 کو پھانسی دے دی جائے گی۔ اگر TEST-COMMAND2 کا TEST-COMMAND2 جائزہ لیا جاتا True تو ، 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 بیان ایک سے زیادہ رکھ سکتے ہیں

مندرجہ ذیل اسکرپٹ آپ کو تین نمبر داخل کرنے کا اشارہ کرے گا اور تینوں نمبروں میں سب سے بڑی تعداد پرنٹ کرے گا۔

#!/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. گھوںسلا بیانات کو استعمال کرنے کے بجائے عام طور پر کیس کے بیان کو استعمال کرنے میں زیادہ موثر ہوتا ہے۔

متعدد شرائط

منطقی OR اور آپریٹرز آپ کو بیانات میں متعدد شرائط استعمال کرنے کی اجازت دیتے ہیں۔

تین نمبروں میں سب سے بڑی تعداد کو پرنٹ کرنے کے لئے اسکرپٹ کا ایک اور ورژن یہ ہے۔ اس ورژن میں ، گھونسلے والے بیانات کے بجائے ، ہم منطقی 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 INTEGER2 کے برابر یا اس سے کم ہے۔ -h FILE - یہ درست ہے کہ اگر فائل موجود ہے اور یہ ایک علامتی لنک ہے۔ -r FILE - یہ درست ہے کہ اگر فائل موجود ہے اور پڑھنے کے قابل ہے۔ -w FILE - یہ درست ہے کہ اگر فائل موجود ہے اور قابل تحریر ہے۔ -x FILE - یہ درست ہے کہ اگر فائل موجود ہے اور قابل عمل ہے۔ -d FILE - یہ درست ہے کہ اگر فائل موجود ہے اور یہ ایک ڈائریکٹری ہے۔ -e FILE - یہ درست ہے کہ اگر فائل موجود ہے اور فائل ہے ، قطع نظر (نوڈ ، ڈائرکٹری ، ساکٹ وغیرہ)۔ -f FILE - یہ درست ہے کہ اگر فائل موجود ہے اور یہ ایک باقاعدہ فائل ہے (ڈائریکٹری یا ڈیوائس نہیں ہے)۔

نتیجہ اخذ کرنا

if ، if..else اور if..elif..else بیانات آپ کو دی گئی شرائط کا جائزہ لے کر if..elif..else اسکرپٹ کے نفاذ کے بہاؤ کو کنٹرول کرنے کی اجازت دیتے ہیں۔

بش ٹرمینل