میں بش میں ایک متغیر کو کیسے بڑھاؤں؟

How Do I Increment Variable Bash



کسی بھی پروگرامنگ لینگویج میں لوپس کا استعمال کرتے ہوئے کاؤنٹر یا تکرار کنندہ کی قدر میں اضافہ یا کمی ایک اہم ترین کام ہے۔ ایسا کرنے میں ، یہ ہمیں اپنے لوپ کے خاتمے کی حالت تک پہنچنے میں مدد کرتا ہے جس کے بغیر ہمارا لوپ لامحدود طور پر چلے گا۔ آج ، ہماری توجہ لینکس ٹکسال 20 میں بش میں ایک متغیر کو بڑھانے کے مختلف طریقوں پر ہوگی۔

لینکس ٹکسال 20 میں بش میں متغیر بڑھانے کی مثالیں:

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







مثال #1: ایک متغیر کے بعد اضافہ:

پوسٹ انکریمنٹ کا اثر دیکھنے کے لیے ، آپ کو نیچے دی گئی تصویر میں دکھائے گئے اسکرپٹ کو کسی بھی باش فائل میں کاپی کرنا ہوگا۔ آپ اپنی ہوم ڈائرکٹری میں اپنی پسند کے کسی بھی نام کے ساتھ باش فائل بنا سکتے ہیں ، اس کے بعد ایک .sh ایکسٹینشن ہو گی۔





اس اسکرپٹ میں ، ہم نے ایک متغیر x کا اعلان کیا ہے اور اسے 0 کی قیمت سے شروع کیا ہے۔ آخر میں ، ٹرمینل پر متغیر کی قیمت پرنٹ کی جائے گی۔





اس اسائنمنٹ کا ہمارے آؤٹ پٹ پر اثر دیکھنے کے لیے ، ہمیں اس سکرپٹ کو نیچے دکھائے گئے کمانڈ کے ساتھ انجام دینا ہوگا۔

$لشکراضافہ ویری ایبل



چونکہ ہم نے متغیر x کو بڑھایا ہے اور اسے متغیر a کو تفویض کیا ہے ، لہذا ، متغیر a کی قدر اب بھی 0. ہوگی۔ اور پھر اس میں اضافہ کیا گیا۔ یہ آؤٹ پٹ مندرجہ ذیل تصویر میں دکھایا گیا ہے:

مثال #2: ایک متغیر کو پہلے سے بڑھانا:

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

اس اسکرپٹ میں ، پوسٹ انکریمنٹ استعمال کرنے کے بجائے ، ہم نے صرف پری انکریمنٹ استعمال کیا۔ اسکرپٹ کا باقی حصہ قریب قریب مثال نمبر 1 جیسا ہے۔

اب ، جب ہم اس اسکرپٹ پر عملدرآمد کرتے ہیں ، ہم دیکھیں گے کہ متغیر a کی قدر 0 کی بجائے 1 ہوگی کیونکہ ، اس بار ، متغیر x کی قدر پہلے بڑھا دی گئی تھی ، اور اسے متغیر a کو تفویض کیا گیا تھا۔ یہ آؤٹ پٹ مندرجہ ذیل تصویر میں دکھایا گیا ہے:

مثال #3: ایک لوپ کے اندر ایک متغیر کے بعد اضافہ:

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

اس سکرپٹ میں ، ایک کاؤنٹر متغیر کے ساتھ لوپ کے لیے ایک سادہ ہے یا ایک تکرار i جس کی قیمت میں اضافہ کیا جا رہا ہے۔ پھر ہم نے ہر تکرار کے لیے صرف i کی قدر چھاپی ہے۔

اس اسکرپٹ کی پیداوار درج ذیل تصویر میں دکھائی گئی ہے۔

مثال #4: ایک لوپ کے اندر ایک متغیر کو پہلے سے بڑھانا:

ایک لوپ کے اندر ایک متغیر کو پہلے سے بڑھانے کے لیے ، مثال کی اسکرپٹ نیچے دی گئی تصویر میں دکھائی گئی ہے۔

یہ اسکرپٹ وہی ہے جیسا کہ ہم نے مثال #3 میں کیا۔ پوسٹ انکریمنٹ کو پری انکریمنٹ کے ساتھ تبدیل کرنا دونوں اسکرپٹس کے درمیان واحد فرق ہے۔

اس سکرپٹ کا آؤٹ پٹ ضم شدہ تصویر میں دکھایا گیا ہے۔ یہ آؤٹ پٹ وہی ہے جیسا کہ مثال #3 میں دکھایا گیا ہے ، اور آپ سوچ رہے ہوں گے کہ کیوں؟ ایسا اس لیے ہے کہ اس بار ، ہم متغیر i کی قدر کسی دوسرے متغیر کو تفویض نہیں کر رہے ہیں۔ یہی وجہ ہے کہ پری انکریمنٹ اور انکریمنٹ کے بعد کے اثرات ان مثالوں میں الگ الگ ہو گئے ہیں۔

مثال #5: ایک متغیر کا استعمال کرتے ہوئے اضافہ کرنا جبکہ لوپ کے ساتھ += نوٹیفکیشن:

+= نوٹیشن کو متغیر کی قدر بڑھانے کے لیے بھی استعمال کیا جا سکتا ہے اور مثال کے سکرپٹ کا مظاہرہ کیا گیا ، یہ نیچے دی گئی تصویر میں دکھایا گیا ہے:

اس اسکرپٹ میں ، ہم نے ایک متغیر i کا اعلان کیا ہے اور 0 کی قیمت مقرر کی ہے۔ پھر ہمارے پاس تھوڑی دیر کا لوپ ہے جو اس متغیر پر تکرار کرتا رہتا ہے جب تک کہ اس کی قیمت 5 سے کم نہ ہو۔ += اشارے کا استعمال کرتے ہوئے اس کی قدر میں اضافہ۔

اس اسکرپٹ کی پیداوار درج ذیل تصویر میں دکھائی گئی ہے۔

مثال #6: ایک متغیر کا استعمال کرتے ہوئے اضافہ کرنا جبکہ لوپ کو +1 نوٹیفکیشن کے ساتھ:

+1 اشارہ بھی ایک متغیر کی قدر کو 1 سے بڑھانے کا ایک اور طریقہ ہے۔

یہ اسکرپٹ ویسا ہی ہے جیسا ہم نے مثال #5 میں کیا تھا۔ +1 نوٹیشن کے ساتھ += نوٹیشن کا متبادل دو سکرپٹ کے درمیان واحد فرق ہے۔

اس اسکرپٹ کی پیداوار درج ذیل تصویر میں دکھائی گئی ہے۔

نتیجہ:

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