انڈروئد

لوپ جبکہ بش

آیت الکرسی کی ایسی تلاوت آپ نے شاید پہلے@ کبهی نہ سنی هوU

آیت الکرسی کی ایسی تلاوت آپ نے شاید پہلے@ کبهی نہ سنی هوU

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

Anonim

لوپ پروگرامنگ کی زبانوں کے بنیادی تصورات میں سے ایک ہے۔ جب آپ کسی خاص حالت کو پورا نہیں کرتے ہیں تو آپ کئی بار کمانڈ کا سلسلہ چلانا چاہتے ہیں۔

سکرپٹ کی زبانیں جیسے باش میں ، تکرار دہرانے والے کاموں کو خود کار بنانے کے ل. مفید ہیں۔ لوپ کے لئے ، جبکہ لوپ کے لئے ، اور لوپ تک ، باش اسکرپٹنگ میں 3 بنیادی لوپ تعمیرات ہیں۔

اس ٹیوٹوریل میں باش میں لوپ کے ساتھ ساتھ وقفے اور بیانات کو جاری رکھنے کی بنیادی باتوں کی بھی وضاحت کی گئی ہے تاکہ لوپ کے بہاؤ کو تبدیل کیا جاسکے۔

باش جبکہ لوپ

جب تک دی گئی حالت درست ہونے کا اندازہ کرے گی تب تک لوپ کا استعمال مقررہ احکامات کو نامعلوم تعداد میں انجام دینے کے لئے کیا جاتا ہے۔

باش جبکہ لوپ مندرجہ ذیل شکل اختیار کرتا ہے:

while do done

احکامات پر عمل کرنے سے پہلے اس حالت کا اندازہ کیا جاتا ہے۔ اگر حالت صحیح کا جائزہ لے تو ، کمانڈز پر عمل درآمد کیا جاتا ہے۔ بصورت دیگر اگر شرط غلط کی جانچ کرے گی تو لوپ کو ختم کردیا جائے گا اور اس کے بعد آنے والے پروگرام کو کنٹرول منتقل کردیا جائے گا۔

ذیل کی مثال میں ، ہر تکرار پر لوپ متغیر i موجودہ قیمت پرنٹ کرتا ہے اور متغیر کو ایک کے ذریعہ بڑھاتا ہے۔

i=0 while do echo Number: $i ((i++)) done

جب تک میں دو سے کم یا مساوی نہیں ہوں تو من lo لوپ تکرار ہوتا ہے۔ یہ مندرجہ ذیل پیداوار پیدا کرے گا:

Number: 0 Number: 1 Number: 2

لامحدود جبکہ لوپ

لامحدود لوپ ایک لوپ ہے جو غیر معینہ مدت تک دہراتا ہے اور کبھی ختم نہیں ہوتا ہے۔ اگر حالت ہمیشہ جائز ہوتی ہے تو آپ کو لامحدود لوپ مل جاتا ہے۔

مندرجہ ذیل مثال میں ہم بلٹ ان کمانڈ استعمال کر رہے ہیں : جو لامحدود لوپ بنانے کیلئے ہمیشہ سچ کی طرف لوٹ آتا ہے۔ آپ true بلٹ ان کمانڈ یا کوئی دوسرا بیان بھی استعمال کرسکتے ہیں جو ہمیشہ سچ ثابت ہوتا ہے۔

while: do echo "Press to exit." sleep 1 done while: do echo "Press to exit." sleep 1 done

اوپر جبکہ لوپ غیر معینہ مدت تک چلے گا۔ آپ CTRL+C دبانے سے لوپ کو ختم کرسکتے ہیں۔

یہاں ایک ہی لائن کے برابر ہے:

while:; do echo 'Press to exit.'; sleep 1; done while:; do echo 'Press to exit.'; sleep 1; done

ایک فائل لائن کے ذریعہ لائن پڑھیں

لوپ کے سب سے عام استعمال میں سے ایک یہ ہے کہ ایک فائل ، ڈیٹا اسٹریم یا متغیر لائن بذریعہ لکیر پڑھیں۔

مندرجہ ذیل مثال میں جبکہ لوپ /etc/passwd فائل لائن کو لائن کے ذریعہ پڑھے گا اور ہر لائن کو پرنٹ کرے گا۔

file=/etc/passwd while read -r line; do echo $line done < "$file"

کسی حالت کے ساتھ تھوڑی لوپ پر قابو پانے کے بجائے ہم ان پٹ ری ڈائریکشن ( < "$file" ) استعمال کر رہے ہیں تاکہ کسی فائل کو read میں منتقل کیا جاسکے جو کمانڈ ہے جو لوپ کو کنٹرول کرتا ہے۔ جب تک آخری لائن کو پڑھنے تک لوپ نہیں چلے گا۔

جب فائل لائن لائن کے ذریعہ read -r آپشن کے ساتھ read جب کہ فرار کے کردار کے طور پر کام کرنے کے لئے بیک سلیش کو روکا جاسکے۔

پہلے سے طے شدہ طور پر read کمانڈ معروف / ٹریلنگ وائٹ اسپیس حروف (خالی جگہوں اور ٹیب) کو تراش دیتی ہے۔ اس طرز عمل کو روکنے کے لئے read کمانڈ سے پہلے IFS= آپشن کا استعمال کریں

file=/etc/passwd while IFS= read -r line; do echo $line done < "$file"

بیانات توڑ اور جاری رکھیں

وقفے اور جاری بیانات کو لوپ پر عمل درآمد کو قابو کرنے کے لئے استعمال کیا جاسکتا ہے۔

توڑ بیان

بریک اسٹیٹمنٹ موجودہ لوپ کو ختم کرتا ہے اور پروگرام کنٹرول کو کمانڈ پر منتقل کرتا ہے جو بند لوپ کی پیروی کرتا ہے۔ عام طور پر جب کسی خاص حالت کی تکمیل ہوتی ہے تو لوپ کو ختم کرنے کے لئے استعمال کیا جاتا ہے۔

مندرجہ ذیل مثال میں ، موجودہ تکرار کردہ آئٹم 2 برابر ہونے کے بعد لوپ پر عمل درآمد میں خلل آجائے گا۔

i=0 while do echo "Number: $i" ((i++)) if]; then break fi done echo 'All Done!'

Number: 0 Number: 1 All Done!

بیان جاری رکھیں

جاری بیان ایک لوپ کی موجودہ تکرار سے باہر نکلتا ہے اور لوپ کے اگلے تکرار پر پروگرام کنٹرول کو منتقل کرتا ہے۔

مندرجہ ذیل میں ، ایک بار موجودہ اعادہ شدہ شے 2 برابر ہونے کے بعد جاری بیان کی وجہ سے پھانسی لوپ کے آغاز میں واپس آسکتی ہے اور اگلے تکرار کے ساتھ جاری رہ سکتی ہے۔

i=0 while do ((i++)) if]; then continue fi echo "Number: $i" done echo 'All Done!'

Number: 1 Number: 3 Number: 4 Number: 5 All Done!

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

ابھی آپ کو اچھی طرح سے سمجھنا چاہئے کہ لوپ کے دوران باش کا استعمال کیسے کریں۔

بش لوپ ٹرمینل