بش میں فائل میں سٹرنگ کو تبدیل کرنے کا طریقہ

How Replace String File Bash



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

Sales.txt







تاریخ رقم علاقہ۔

01/01/2020 60000 ڈھاکہ۔
10/02/2020 76000 راجشاہی۔
21/03/2020 54000 کھلنا۔
15/04/2020 78000 چاند پور۔
17/05/2020 45000 بوگرا۔
02/06/2020 67000 کومیلا۔

سٹرنگ کو ایک فائل میں `sed` کمانڈ سے تبدیل کریں۔

`کا بنیادی نحو۔ sed `فائل میں مخصوص سٹرنگ کو تبدیل کرنے کا کمانڈ ذیل میں دیا گیا ہے۔



نحو۔



sed -میں 's/search_string/replace_string/'فائل کا نام

مندرجہ بالا نحو کا ہر حصہ ذیل میں بیان کیا گیا ہے۔





'-میں' اگر فائل میں سرچ سٹرنگ موجود ہو تو متبادل سٹرنگ کے ساتھ اصل فائل کے مواد کو تبدیل کرنے کے لیے آپشن استعمال کیا جاتا ہے۔

’’ متبادل کمانڈ کی طرف اشارہ کرتا ہے۔



'تلاش_ سٹرنگ' سٹرنگ ویلیو پر مشتمل ہے جسے فائل میں متبادل کے لیے تلاش کیا جائے گا۔

'متبادل_ سٹرنگ' سٹرنگ ویلیو پر مشتمل ہے جو فائل کے مواد کو تبدیل کرنے کے لیے استعمال کیا جائے گا جو کہ میچ کرتا ہے۔ 'تلاش_ سٹرنگ' قدر.

'فائل کا نام' فائل کے نام پر مشتمل ہے جہاں تلاش اور تبدیل لاگو کیا جائے گا۔

مثال 1: فائل کو 'sed' کمانڈ سے تبدیل کریں۔

مندرجہ ذیل سکرپٹ میں ، تلاش اور بدلنے والا متن صارف سے لیا جائے گا۔ اگر سرچ سٹرنگ 'Sales.txt' میں موجود ہے ، تو اسے متبادل سٹرنگ سے بدل دیا جائے گا۔ یہاں ، کیس حساس تلاش کی جائے گی۔

#!/bin/bash

# فائل کا نام تفویض کریں۔
فائل کا نام='Sales.txt'

# سرچ سٹرنگ لیں۔
پڑھیں -پی 'سرچ سٹرنگ درج کریں:'تلاش

# متبادل سٹرنگ لیں۔
پڑھیں -پی 'متبادل سٹرنگ درج کریں:'تبدیل کریں

اگر [[ $ تلاش !='' && $ تبدیل کریں۔ !='' ]]؛پھر
sed -میں کی/$ تلاش/$ تبدیل کریں۔/ ' $ filename
ہو

آؤٹ پٹ۔

مثال 2: فائل کو 'sed' کمانڈ سے 'g' اور 'i' پرچم سے تبدیل کریں۔

مندرجہ ذیل اسکرپٹ پچھلی مثال کی طرح کام کرے گا ، لیکن سرچ سٹرنگ کو عالمی سطح پر 'جی' جھنڈے کے لیے تلاش کیا جائے گا ، اور 'آئی' جھنڈے کے لیے غیر حساس تلاش کی جائے گی۔

#!/bin/bash

# سرچ سٹرنگ لیں۔
پڑھیں -پی 'سرچ سٹرنگ درج کریں:'تلاش

# متبادل سٹرنگ لیں۔
پڑھیں -پی 'متبادل سٹرنگ درج کریں:'تبدیل کریں

اگر [[ $ تلاش !='' && $ تبدیل کریں۔ !='' ]]؛پھر
sed -میں کی/$ تلاش/$ تبدیل کریں۔/دینا ' $ 1
ہو

آؤٹ پٹ۔

مثال 3: فائل کو 'sed' کمانڈ اور مماثل ہندسوں کے پیٹرن سے تبدیل کریں۔

مندرجہ ذیل سکرپٹ ایک فائل میں تمام عددی مواد کی تلاش کرے گا اور اس کو شامل کرکے مواد کی جگہ لے لے گا۔ '$' نمبروں کے آغاز میں علامت۔

#!/bin/bash

# چیک کریں کمانڈ لائن دلیل قیمت موجود ہے یا نہیں۔
اگر [ $ 1 !='' ]؛پھر
# ہندسوں پر مشتمل تمام تار تلاش کریں اور $ شامل کریں۔
sed -میں 's/ b [0-9] {5 } b/$ &/g' $ 1
ہو

آؤٹ پٹ۔

فائل میں سٹرنگ کو `awk` کمانڈ سے تبدیل کریں۔

’’ عجیب ' کمانڈ فائل میں سٹرنگ کو تبدیل کرنے کا ایک اور طریقہ ہے ، لیکن یہ کمانڈ اصل فائل کو براہ راست اپ ڈیٹ نہیں کر سکتی ' لیکن کمانڈ.

مثال 4: فائل کو 'awk' کمانڈ سے تبدیل کریں۔

درج ذیل سکرپٹ میں اپ ڈیٹ شدہ مواد کو محفوظ کرے گا۔ temp.txt فائل جو کہ اصل فائل کے نام سے بدل دی جائے گی۔

#!/bin/bash

# چیک کریں کمانڈ لائن دلیل قیمت موجود ہے یا نہیں۔
اگر [ $ 1 !='' ]؛پھر
# تاریخ کی بنیاد پر تمام تار تلاش کریں۔
عجیب '{ذیلی ('02/06/2020' ، '12/06/2020')} 1 ' $ 1 >temp.txt&& mvtemp.txt$ 1
ہو

آؤٹ پٹ۔

نتیجہ

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