لینکس یپ پی کمانڈ ان پٹ فلٹرنگ کے طریقہ کار کے طور پر استعمال کیا جاتا ہے. GREP عالمی باقاعدہ اظہار پرنٹر کے لئے کھڑا ہے اور اس وجہ سے اسے مؤثر طریقے سے استعمال کرنے کے لئے، آپ کو باقاعدگی سے اظہار کے بارے میں کچھ علم ہونا چاہئے.
اس آرٹیکل میں، آپ کو کئی مثالیں سیکھیں گے جو آپ کو grep کمانڈ کو سمجھنے میں مدد ملتی ہے.
01 کے 09GREP کا استعمال کرتے ہوئے ایک فائل میں ایک سٹرنگ کے لئے تلاش کیسے کریں
تصور کریں کہ آپ کے پاس مندرجہ ذیل بچوں کے عنوانات کے ساتھ کتابوں کا ایک متن فائل ہے:
- رابن ہڈ
- لٹل ریڈ رائڈنگ ہڈ
- پیٹر پین
- Goldilocks اور تین ریچھ
- سنو وائٹ اور سات بونے
- پنکیوو
- ٹوپی میں بلی
- تین لٹل سور
- Gruffalo
- چارلی اور چاکلیٹ کا کارخانہ
عنوان میں "اس" لفظ کے ساتھ تمام کتابیں تلاش کرنے کے لئے آپ مندرجہ ذیل نحوط کا استعمال کریں گے:
کتابیںمندرجہ ذیل نتائج واپس آ جائیں گے:
- Goldilocks اور تین ریچھ
- سنو وائٹ اور سات بونے
- ٹوپی میں بلی
- تین لٹل سور
- Gruffalo
- چارلی اور چاکلیٹ کا کارخانہ
ہر صورت میں، لفظ "اس" پر روشنی ڈالی جائے گی.
تلاش کیس حساس ہے تو اگر ایک عنوانات "بجائے" کی بجائے "تو" تھا تو پھر وہ واپس نہیں آئے گا.
اس معاملے کو نظر انداز کرنے کیلئے آپ مندرجہ ذیل سوئچ کو شامل کرسکتے ہیں:
کتابیں - داخلہ کیسآپ مندرجہ ذیل طور پر -I سوئچ استعمال کرسکتے ہیں:
ذیل میں پڑھنا جاری رکھیں
02 کے 09وائلڈ کارڈ کا استعمال کرتے ہوئے ایک فائل میں ایک سٹرنگ کے لئے تلاش کریں
یوپی پی کمانڈ بہت طاقتور ہے. آپ پیٹرن ملاپ کی تکنیک کے نتائج کو فلٹر کرنے کے لئے متعدد استعمال کرسکتے ہیں.
اس مثال میں، میں آپ کو دکھاؤں گا کہ کس طرح جنگلی کارڈوں کے ذریعے ایک فائل میں ایک تار کی تلاش کرنا ہے.
تصور کریں کہ آپ کو ذیل میں سکاٹ لینڈ کے نام کے نام کے ساتھ جگہوں پر فائل کہا جائے گا:
ابرڈینایبرسٹیستھAberlourInverurieاندرونینیا برگنیا ہنرنیا گیلانیگلاسگوایڈنبرگاگر آپ نام میں موجود انفرادی جگہوں کو تلاش کرنا چاہتے ہیں تو مندرجہ ذیل نحوط کا استعمال کریں:
گرپ انور * جگہیںاسٹرک (*) وائلڈ کارڈ 0 یا بہت سے کے لئے کھڑا ہے. لہذا اگر آپ کے پاس انفرادی نام یا جگہ ہے جسے انفرادی کہتے ہیں تو پھر دونوں واپس آ جائیں گے.
ایک اور وائلڈ کارڈ جس کا استعمال آپ کرسکتے ہیں وہ مدت (.). آپ ایک ہی خط سے ملنے کے لئے اسے استعمال کرسکتے ہیں.
grep inver.r مقاماتمندرجہ بالا کمانڈ انورور اور انورری نامی جگہوں کو تلاش کرے گا لیکن انورئیری کو نہیں مل سکا کیونکہ وہاں صرف ایک آر ایل کے درمیان ہی ایک ہی جنگلی کارڈ ہوسکتی ہے جیسا کہ واحد دور کی طرف سے منظور ہے.
مدت وائلڈ کارڈ مفید ہے لیکن یہ آپ کو تلاش کر رہے ہیں جس متن کے ایک حصے کے طور پر آپ کو ایک مسئلہ ہو سکتا ہے.
مثال کے طور پر ڈومین کے ناموں کی فہرست میں نظر آتے ہیں
- linux.about.com
- pcsupport.about.com
- mp3.about.com
- minecraft.about.com
- androidgames.about.com
- netforbeginners.about.com
- dailylinuxuser.com
- google.co.uk
- google.au
- direct.gov.uk
.com کے بارے میں سب کچھ تلاش کرنے کے لئے آپ صرف مندرجہ ذیل نحوط کا استعمال کرتے ہوئے تلاش کرسکتے ہیں:
grep * کے بارے میں * domainnamesمندرجہ ذیل کمانڈ گر جائے گا اگر فہرست اس میں مندرجہ ذیل نام شامل ہو گی:
- dailylinuxuser.com/about.html
لہذا آپ مندرجہ ذیل نحوط کی کوشش کر سکتے ہیں:
grep * about.com domainnamesیہ ٹھیک کام کرے گا جب تک کہ مندرجہ ذیل نام کے ساتھ کوئی ڈومین نہ ہو.
aboutycom.comواقعی کے بارے میں اصطلاح.com کے لئے تلاش کرنے کے لئے آپ کو مندرجہ ذیل ڈاٹ سے فرار ہونے کی ضرورت ہوگی:
n ڈومین نام کے بارے میں * grep *حتمی وائلڈ کارڈ آپ کو ظاہر کرنے کے لئے سوال نمبر ہے جو صفر یا ایک کردار کے لئے ہے.
مثال کے طور پر:
grep؟ ber placenamesمندرجہ ذیل کمانڈر ابرڈین، ابرسٹیس ویٹ یا یہاں تک کہ بریک کو واپس آ جائے گا.
ذیل میں پڑھنا جاری رکھیں
03 کے 09grep کا استعمال کرتے ہوئے لائن کے آغاز اور اختتام پر سٹرنگ کے لئے تلاش کریں
کیریٹ (^) اور ڈالر ($) علامت آپ کو پیٹرنوں کی ابتدائی اور آخر میں تلاش کرنے کی اجازت دیتا ہے.
تصور کریں کہ آپ کے پاس مندرجہ بالا ٹیم کے نام سے فٹ بال نامی فائل ہے:
- بلیکپول
- لیورپول
- مانچسٹر شہر
- لیسیسٹر شہر
- مانچسٹر یونائیٹڈ
- نیو کیسل متحدہ
- مانچسٹر کے ایف سی اقوام متحدہ
اگر آپ کو مانچسٹر کے ساتھ شروع ہونے والے تمام ٹیموں کو تلاش کرنا چاہتے ہیں تو آپ مندرجہ ذیل نحوط کا استعمال کریں گے:
grep ^ مانچسٹر ٹیموںمندرجہ بالا کمانڈر مانچسٹر سٹی اور مانچسٹر یونائیٹڈ واپس آ جائیں گے لیکن ایف سی اقوام متحدہ مانچسٹر کے نہیں ہوں گے.
متبادل طور پر، آپ مندرجہ ذیل نحوط کا استعمال کرتے ہوئے اقوام متحدہ کے اختتامی تمام ٹیموں کو تلاش کرسکتے ہیں:
یوکرین $ $ ٹیموںمندرجہ ذیل کمانڈر مانچسٹر یونائیٹڈ اور نیوکاسل یونین میں واپس آئیں گے لیکن ایف سی اقوام متحدہ مانچسٹر کے نہیں ہوں گے.
04 کے 09grep کا استعمال کرتے ہوئے میچوں کی تعداد گنتی
اگر آپ اصل لائنوں کو واپس نہیں کرنا چاہتے ہیں جو یپپی کا استعمال کرتے ہوئے نمونہ سے نمٹنے کے لئے چاہتے ہیں لیکن آپ صرف یہ جاننا چاہتے ہیں کہ آپ مندرجہ ذیل نحوط کا کتنا استعمال کرسکتے ہیں:
grep -c پیٹرن ان پٹ فائلاگر پیٹرن دو مرتبہ مل گیا تو نمبر 2 واپس آ جائے گا.
ذیل میں پڑھنا جاری رکھیں
05 کے 09تمام شرائط تلاش کریں جو یپپی کا استعمال کرتے ہوئے مماثلت نہ کریں
تصور کریں کہ آپ مندرجہ ذیل ممالک کے ساتھ جگہ کے نام کی ایک فہرست رکھتے ہیں.
- ابرڈین سکاٹ لینڈ
- گلاسگو اسکاٹ لینڈ
- لیورپول انگلینڈ
- کولواین بیل
- لندن، انگلینڈ
آپ نے محسوس کیا ہے کہ کولواین بیل میں کوئی ملک اس سے منسلک نہیں ہے.
جس ملک کے ساتھ آپ مندرجہ ذیل نحوط کا استعمال کرسکتے ہیں ان کی تلاش کرنے کے لئے:
گرپ زمین $ مقاماتنتائج کی واپسی کالونین بیل کے علاوہ تمام مقامات پر ہوگی.
یہ واضح طور پر صرف جگہوں پر کام کرتا ہے جو زمین میں ختم ہوتا ہے (شاید ہی سائنسی).
آپ مندرجہ ذیل نحوط کا استعمال کرتے ہوئے انتخاب کو تبدیل کر سکتے ہیں:
grep -v زمین $ مقاماتیہ تمام جگہیں تلاش کریں گی جو زمین سے ختم نہ ہوئیں.
06 کے 09grep کا استعمال کرتے ہوئے فائلوں میں خالی لائنیں کیسے تلاش کریں
تصور کریں کہ آپ کے پاس ان پٹ فائل ہے جو تیسرے فریق کی درخواست کے ذریعہ استعمال کیا جاتا ہے جو فائل کو پڑھتا ہے جب یہ خالی لائن مندرجہ ذیل ہے.
- ابرڈین سکاٹ لینڈ
- اندرونی سکوتل
- لیورپول انگلینڈ
- کولولین بیل ویلز
جب لیورپول کی درخواست اس وقت تک ہو جاتی ہے تو اسے پڑھنے سے روکنے کا مطلب یہ ہے کہ کولوان کی بیل مکمل طور پر مسلط ہوجائے گی.
آپ کو مندرجہ ذیل نحوط کے ساتھ خالی لائنوں کو تلاش کرنے کے لئے grep استعمال کر سکتے ہیں:
grep ^ $ مقاماتبدقسمتی سے یہ خاص طور پر مفید نہیں ہے کیونکہ یہ صرف خالی لائنوں کو واپس کرتا ہے.
آپ کو یقینی طور پر چیک کرنے کے لۓ خالی لائنوں کی تعداد کا شمار حاصل ہوسکتا ہے اگر یہ ایرر برقرار رہے تو یہ فائل درست ہے:
grep -c ^ $ مقاماتیہ قطع نظر لائن نمبروں کو جاننے کے لئے زیادہ مفید ہوسکتا ہے جو خالی لائن ہے تاکہ آپ ان کو تبدیل کرسکیں. آپ مندرجہ ذیل کمانڈ کے ساتھ کر سکتے ہیں:
grep -n ^ $ مقاماتذیل میں پڑھنا جاری رکھیں
07 کے 09grep کا استعمال کرتے ہوئے بڑے پیمانے پر یا کم کراس حروف کے سٹرپس کے لئے تلاش کرنے کے لئے کس طرح
grep کا استعمال کرتے ہوئے آپ اس بات کا تعین کرسکتے ہیں کہ ایک فائل میں کونسی لائنیں مندرجہ ذیل مطابقت پذیری کا استعمال کرتے ہوئے بڑے حروف ہیں:
grep 'A-Z' فائل ناممربع بریکٹ آپ کو حروف کی حد کا تعین کرنے دیں. مندرجہ ذیل مثال میں یہ کسی بھی کردار سے ملتا ہے جو A اور Z کے درمیان ہے.
لہذا کم کراس حروف سے ملنے کے لئے آپ مندرجہ ذیل نحوط کا استعمال کرسکتے ہیں:
grep 'a-z' کا نام نامہاگر آپ صرف حروف سے ملنا چاہتے ہیں اور اعداد و شمار یا دیگر علامات نہیں چاہتے ہیں تو آپ مندرجہ ذیل نحوط کا استعمال کرسکتے ہیں:
grep 'a-za-z' کا نام نامہآپ مندرجہ ذیل نمبروں کے ساتھ اسی طرح کر سکتے ہیں:
grep '0-9' فائل کا نام 08 کے 09grep کا استعمال کرتے ہوئے پیٹرن کو دوبارہ دیکھنا چاہتے ہیں
آپ بار بار پیٹرن تلاش کرنے کے لئے گھوبگھرالی بریکٹ {} استعمال کرسکتے ہیں.
تصور کریں کہ آپ کے پاس فون نمبروں کے ساتھ فائل ہے جیسا کہ مندرجہ ذیل ہے:
- 055-1234
- 055-4567
- 555-1545
- 444-0167
- 444-0854
- 4549-2234
- x44-1234
آپ جانتے ہیں کہ نمبر کا پہلا حصہ تین ہندسوں کی ضرورت ہے اور آپ ایسے لائنوں کو تلاش کرنا چاہتے ہیں جو یہ پیٹرن نہیں ملتی ہیں.
پچھلے مثال سے آپ جانتے ہیں کہ 0-9 فائل میں تمام نمبروں کو واپس آتی ہے.
اس مثال میں ہم ایسے لائنیں چاہتے ہیں جو ہائفن کے بعد تین نمبروں کے ساتھ شروع کرتے ہیں (-). آپ مندرجہ ذیل مطابقت کے ساتھ ایسا کر سکتے ہیں:
grep "^ 0-9 0-9 0-9 -" نمبرجیسا کہ ہم پچھلے مثالوں سے جانتے ہیں کہ کیریٹ (^) کا مطلب یہ ہے کہ لائن مندرجہ بالا پیٹرن کے ساتھ شروع ہونا چاہیے.
0-9 کسی اور نمبر 0 اور 9 کے درمیان تلاش کریں گے. اس میں تین بار 3 نمبرز سے منسلک ہوتے ہیں. آخر میں ایک ہائفن موجود ہے کہ ایک ہفین کو تین نمبروں کو کامیاب کرنا ہوگا.
گھوبگھرالی بریکٹ استعمال کرتے ہوئے آپ مندرجہ بالا تلاش کر سکتے ہیں:
grep "^ 0-9 {3 } -" نمبرسلیش {بریکٹ سے بچتا ہے تاکہ یہ باقاعدہ اظہار کے حصے کے طور پر کام کرتا ہے لیکن اس سلسلے میں یہ کیا کہہ رہا ہے 0-9 {3} جس کا مطلب ہے کہ 0 اور 9 تین بار کے درمیان کسی بھی نمبر.
مندرجہ ذیل طور پر گھوبگھرالی بریکٹ استعمال کیا جا سکتا ہے:
{5,10}{5,}{5،10} کا مطلب یہ ہے کہ کردار کے لئے تلاش کرنے والے کردار کو کم از کم 5 دفعہ بار بار کیا جائے گا لیکن 10 سے زائد نہیں ہیں جبکہ 5،} اس کا مطلب ہے کہ کردار کو کم از کم 5 بار بار بار بار بار بار بار کرنا چاہیے لیکن اس سے بھی زیادہ ہوسکتا ہے.
ذیل میں پڑھنا جاری رکھیں
09 کے 09دیگر حکموں سے پیداوار کا استعمال کرتے ہوئے grep کا استعمال کرتے ہوئے
اس طرح ہم نے انفرادی فائلوں کے اندر اندر نمونہ مماثلت کو دیکھا ہے لیکن یوکرین دوسرے حکموں سے پیٹرن کے ملاپ کے ان پٹ کے طور پر استعمال کر سکتے ہیں.
اس کا ایک بہترین مثال پی ایس کمانڈ استعمال کرتا ہے جو فعال عمل کی فہرست کرتا ہے.
مثال کے طور پر مندرجہ ذیل کمانڈ چلائیں:
ps -efآپ کے سسٹم پر چلنے والے تمام عمل دکھایا جائے گا.
آپ کو خاص طور پر چلنے والے عمل کے لئے تلاش کرنے کیلئے یپپی استعمال کرسکتے ہیں.
ps -ef | grep فائر فاکسخلاصہ
یوپیپی کمانڈ ایک بنیادی لینکس کمانڈر ہے اور یہ وہی ہے جو سیکھنے کے لائق ہے کیونکہ ٹرمینل کا استعمال کرتے وقت فائلوں اور عملوں کی تلاش میں یہ آپ کی زندگی بہت آسان بناتی ہے.