انڈروئد

باز (انسداد) میں اضافہ اور گھٹاؤ متغیر کرنے کا طریقہ

سوا - غابة المعمورة تواجه خطر الاندثار

سوا - غابة المعمورة تواجه خطر الاندثار

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

Anonim

باش اسکرپٹس لکھتے وقت ریاضی کے ایک عمومی عمل میں سے ایک یہ ہے کہ متغیر میں اضافہ اور کمی آرہی ہے۔ یہ اکثر عام طور پر کاؤنٹر کے طور پر لوپ میں استعمال ہوتا ہے ، لیکن یہ اسکرپٹ میں کہیں اور بھی ہوسکتا ہے۔

اضافہ اور گھٹانے کا مطلب عددی متغیر کی قدر سے بالترتیب ، ایک قدر (عام طور پر 1 ) شامل کرنا یا اسے گھٹانا ہے۔ ریاضی کی توسیع ڈبل قوسین ((…)) اور $((…)) یا لیٹ بلٹ ان کمانڈ کے ذریعہ انجام let جاسکتی ہے۔

باش میں ، متغیر میں اضافے / تخفیف کے متعدد طریقے ہیں۔ اس مضمون میں ان میں سے کچھ کی وضاحت کی گئی ہے۔

آپریٹرز + اور - کا استعمال کرتے ہوئے

متغیر میں اضافہ / گھٹاؤ کا سب سے آسان طریقہ + اور - آپریٹرز کا استعمال کرنا ہے۔

i=$((i+1)) ((i=i+1)) let "i=i+1"

i=$((i-1)) ((i=i-1)) let "i=i-1"

یہ طریقہ آپ کو اپنی پسند کی قیمت کے ذریعہ متغیر کو بڑھا / گھٹا دیتا ہے۔

یہاں until لوپ کے اندر متغیر میں اضافے کی ایک مثال ہے۔

i=0 until do echo i: $i ((i=i+1)) done

i: 0 i: 1 i: 2 i: 3

آپریٹر += اور -=

مذکورہ بالا آپریٹرز کے علاوہ ، بش اسائنمنٹ آپریٹرز += اور -= بھی مہیا کرتا ہے۔ یہ آپریٹرز آپریٹر کے بعد مخصوص قیمت کے ساتھ بائیں آپریڈ کی قیمت میں اضافہ / کمی کے لئے استعمال ہوتے ہیں۔

((i+=1)) let "i+=1"

((i-=1)) let "i-=1"

مندرجہ ذیل میں while لوپ ہم i متغیر کی قدر 5 سے گھٹا رہے ہیں۔

i=20 while do echo Number: $i let "i-=5" done

Number: 20 Number: 15 Number: 10 Number: 5

آپریٹرز ++ اور -- کا استعمال کرتے ہوئے

++ اور -- آپریٹرز میں اضافہ اور تخمینہ بالترتیب ، اس کے اوپرینڈ 1 اور قیمت واپس کرتے ہیں۔

((i++)) ((++i)) let "i++" let "++i"

((i--)) ((--i)) let "i--" let "--i"

آپریٹرز اوپیندرڈ سے پہلے یا بعد میں استعمال ہوسکتے ہیں۔ انہیں یہ بھی کہا جاتا ہے:

  • --i اضافہ: ++i پریفکس کمی: --i اضافہ: i++ --i کمی: --i

پریفکس آپریٹرز پہلے آپریٹرز میں 1 سے اضافہ / کمی کرتے ہیں اور پھر آپریٹرز کی نئی قیمت واپس کرتے ہیں۔ دوسری طرف ، پوسٹ فکس آپریٹرز آپریٹرز کی قیمت بڑھا / گھٹانے سے پہلے ہی واپس کردیتے ہیں۔

درج ذیل مثالوں سے یہ ظاہر ہوتا ہے کہ جب آپریٹر سے پہلے اور اس کے بعد استعمال ہوتا ہے تو ++ آپریٹر کیسے کام کرتا ہے:

x=5 y=$((x++)) echo x: $x echo y: $y

x: 6 y: 5

x=5 y=$((++x)) echo x: $x echo y: $y

x: 6 y: 6

ذیل میں ایک مثال یہ ہے کہ بش اسکرپٹ میں پوسٹ فکس انکیمینٹر کا استعمال کیسے کریں:

#!/bin/bash i=0 while true; do if]; then exit 1 fi echo i: $i ((i++)) done

ان آپریٹرز کے استعمال کا نقصان یہ ہے کہ متغیر کو صرف بڑھا یا 1 سے کم کیا جاسکتا ہے۔

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

باش میں متغیرات میں اضافہ اور کمی بہت سے مختلف طریقوں سے کی جاسکتی ہے۔ جو بھی طریقہ استعمال کریں ، نتیجہ وہی ہے۔

اگر آپ کے ذہن میں کوئی سوال یا آراء ہیں تو بلا جھجھک کوئی تبصرہ کریں۔

بش لوپ ٹرمینل