بش میں ڈور کا موازنہ کیسے کریں

How Compare Strings Bash



مختلف پروگرامنگ مقاصد کے لیے ، ہمیں دو ڈوروں کی قیمت کا موازنہ کرنے کی ضرورت ہے۔ دو ڈور کی مساوات کو جانچنے کے لیے کئی پروگرامنگ زبان میں بلٹ ان افعال استعمال کیے جاتے ہیں۔ آپ bash میں دو ڈوروں کی مساوات اور عدم مساوات کو استعمال کرکے چیک کر سکتے ہیں۔ اگر بیان == مساوات کو چیک کرنے کے لیے استعمال کیا جاتا ہے اور ! = ڈور کی عدم مساوات کی جانچ کے لیے استعمال کیا جاتا ہے۔ آپ جزوی طور پر دو ڈوروں کی اقدار کا موازنہ بش میں بھی کر سکتے ہیں۔ آپ بش میں سٹرنگ ویلیوز کا موازنہ کیسے کر سکتے ہیں اس ٹیوٹوریل میں مختلف مثالوں کا استعمال کرتے ہوئے دکھایا گیا ہے۔

مثال 1: سٹرنگ موازنہ == آپریٹرز کا استعمال کرتے ہوئے۔

دیگر معیاری پروگرامنگ زبان کی طرح بش میں دو سٹرنگ ویلیوز کی مساوات کو چیک کرنے کے لیے کوئی بلٹ ان موازنہ فنکشن نہیں ہے۔ مندرجہ ذیل اسکرپٹ میں ، دو سٹرنگ متغیرات ، strval1 اور strval2 قرار دیا جاتا ہے. ان دو سٹرنگ متغیرات کی ایکوئٹی کو پہلے استعمال کرتے ہوئے ٹیسٹ کیا جاتا ہے۔ اگر اسکرپٹ کا بیان کی قدر۔ strval1 دوسرے میں مساوات کو چیک کرنے کے لیے اسٹرنگ ویلیو سے موازنہ کیا جاتا ہے۔ اگر بیان







#!/bin/bash

strval1='اوبنٹو'
strval2='ونڈوز'

#مساوات کے دو سٹرنگ متغیرات کو چیک کریں۔

اگر [ $ strval1۔==$ strval2۔ ]؛پھر
باہر پھینک دیا 'ڈور برابر ہیں'
اور
باہر پھینک دیا 'ڈور برابر نہیں ہیں'
ہو

#سٹرنگ ویلیو کے ساتھ متغیر کی مساوات چیک کریں۔

اگر [ $ strval1۔=='اوبنٹو' ]؛پھر
باہر پھینک دیا 'لینکس آپریٹنگ سسٹم'
اور
باہر پھینک دیا 'ونڈوز آپریٹنگ سسٹم'
ہو

آؤٹ پٹ:



پہلا موازنہ برابر نہیں ہے اور دوسرا موازنہ برابر ہے۔







مثال 2: سٹرنگ موازنہ! = آپریٹر کا استعمال کرتے ہوئے۔

دو سٹرنگ متغیرات کی عدم مساوات کو مندرجہ ذیل مثال میں چیک کیا گیا ہے۔ یہاں دو اقدار برابر نہیں ہیں۔ لہذا ، اگر حالت درست ہوگی اور۔ ونڈوز آپریٹنگ سسٹم۔ پرنٹ کریں گے.

#!/bin/bash

strval1='اوبنٹو'
strval2='ونڈوز'

#سٹرنگ ویلیو کے ساتھ متغیر کی عدم مساوات چیک کریں۔

اگر [ $ strval2۔ !='اوبنٹو' ]؛پھر
باہر پھینک دیا 'ونڈوز آپریٹنگ سسٹم'
اور
باہر پھینک دیا 'لینکس آپریٹنگ سسٹم'
ہو

آؤٹ پٹ:



مثال 3: جزوی سٹرنگ کا موازنہ۔

آپ بش اسکرپٹ میں وائلڈ کارڈ کیریکٹر کا استعمال کرکے جزوی قیمت کا موازنہ کرسکتے ہیں۔ مندرجہ ذیل اسکرپٹ میں ، * جزوی ملاپ کے لیے وائلڈ کارڈ کیریکٹر کے طور پر استعمال ہوتا ہے۔ تار متغیر ، strval لفظ پر مشتمل ہے انٹرنیٹ. تو ، پہلا۔ اگر اسکرپٹ کا سچ واپس آ جائے گا اور پرنٹ ہو جائے گا۔ جزوی طور پر مماثل۔ . باش کیس حساس ہے۔ اس کے لیے ، دوسرا۔ اگر انٹرنیٹ کو جزوی تار کے طور پر استعمال کرنے کی وجہ سے اسکرپٹ کا غلط واپس آ جائے گا جو حرف وار موازنہ سے برابر نہیں ہے۔

#!/bin/bash

strval='مائیکروسافٹ انٹرنیٹ ایکسپلورر'

اگر [[ $ strval==*انٹرنیٹ* ]]؛
پھر
باہر پھینک دیا 'جزوی ملاپ'
اور
باہر پھینک دیا 'کوئی میچ نہیں'
ہو

اگر [[ $ strval==*انٹرنیٹ* ]]؛
پھر
باہر پھینک دیا 'جزوی ملاپ'
اور
باہر پھینک دیا 'کوئی میچ نہیں'
ہو

آؤٹ پٹ:

مثال 4: صارف کی ان پٹ ویلیو کے ساتھ سٹرنگ کا موازنہ کریں۔

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

#!/bin/bash

باہر پھینک دیا 'اپنا نام درج کریں'
پڑھیںان پٹ

اگر [ $ ان پٹ۔ !='فہمیدہ' ]؛
پھر
باہر پھینک دیا 'کوئی ریکارڈ نہیں ملا'
اور
باہر پھینک دیا 'ریکارڈ ملا'
ہو

آؤٹ پٹ:

اس سبق کی ویڈیو یہاں ہے:

واضح تفہیم کے ساتھ مندرجہ بالا مثالوں کو مکمل کرنے کے بعد بش میں سٹرنگ موازنہ کا کام آپ کے لیے آسان ہوگا۔