لینکس میں گریپ کمانڈ۔

Grep Command Linux



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

اس مضمون میں ، ہم مختلف مثالوں کے ساتھ گریپ یوٹیلیٹی کے استعمال کی وضاحت کریں گے۔ ہم اس مضمون میں بیان کردہ احکامات اور طریقوں کی وضاحت کے لیے ڈیبین 10 کا استعمال کریں گے۔







گریپ انسٹال کرنا

گریپ لینکس کی زیادہ تر تقسیم میں انسٹال ہوتا ہے۔ تاہم ، اگر یہ آپ کے سسٹم سے غائب ہے تو ، آپ اسے ٹرمینل میں درج ذیل طریقہ استعمال کرکے انسٹال کرسکتے ہیں۔



$سودو apt-get install گرفت

گریپ کا استعمال

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



$گرفت [اختیارات]پیٹرن[فائل ...]

فائلیں تلاش کریں۔

کسی ڈائریکٹری میں فائل کا نام تلاش کرنے کے لیے جس میں ایک مخصوص سٹرنگ ہو ، آپ grep کو مندرجہ ذیل طریقے سے استعمال کر سکتے ہیں۔





$ایل ایس - | گرفت -میںتار

مثال کے طور پر ، فائل کا نام تلاش کرنے کے لیے جس میں سٹرنگ ہو۔ پرکھ ، کمانڈ یہ ہوگا:

$ایل ایس-| گرفت-میںپرکھ

یہ کمانڈ ان تمام فائلوں کی فہرست دیتا ہے جن میں سٹرنگ ہوتی ہے۔ پرکھ .



فائل میں سٹرنگ تلاش کریں۔

کسی خاص فائل میں سٹرنگ تلاش کرنے کے لیے ، آپ درج ذیل کمانڈ نحو استعمال کر سکتے ہیں۔

$گرفتسٹرنگ فائل کا نام

مثال کے طور پر ، ایک تار تلاش کرنا۔ پرکھ نامی فائل میں ٹیسٹ فائل 1۔ ، ہم نے درج ذیل کمانڈ استعمال کی ہے۔ :

$گرفتملازم ٹیسٹ فائل 1۔

مذکورہ آؤٹ پٹ نے سے جملہ واپس کر دیا ہے۔ ٹیسٹ فائل 1۔ جس میں تار شامل ہے۔ ملازم .

متعدد فائلوں میں تار تلاش کریں۔

ایک سے زیادہ فائلوں میں سٹرنگ تلاش کرنے کے لیے ، آپ درج ذیل کمانڈ نحو استعمال کر سکتے ہیں۔

$گرفتسٹرنگ فائل کا نام 1 فائل کا نام 2۔

مثال کے طور پر ، ہماری دو فائلوں testfile1 اور testfile2 میں سٹرنگ ملازم کو تلاش کرنے کے لیے ، ہم نے درج ذیل کمانڈ استعمال کی ہے۔

$گرفتملازم testfile1 testfile2

مذکورہ کمانڈ ان تمام لائنوں کی فہرست دے گی جن میں سٹرنگ ملازم دونوں فائلوں testfile1 اور testfile2 شامل ہیں۔

اگر فائل کے تمام نام ایک ہی متن سے شروع ہوتے ہیں تو آپ وائلڈ کارڈ کیریکٹر بھی استعمال کرسکتے ہیں۔

$گرفتسٹرنگ فائل کا نام*

جیسے ، اگر ہم مندرجہ بالا مثال لیں جس میں ہمارے فائل کے نام تھے۔ testfile1 اور testfile2 ، کمانڈ یہ ہوگا:

$گرفتملازم ٹیسٹ فائل*

سٹرنگ کے کیس کو نظر انداز کرکے فائل میں سٹرنگ تلاش کریں۔

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

آپ grep کو grep کے بعد flagi پرچم کا استعمال کرکے سرچ سٹرنگ کے معاملے کو نظر انداز کرنے کے لیے کہہ سکتے ہیں۔

$گرفتstringi سٹرنگ فائل کا نام۔

flagi پرچم کا استعمال کرتے ہوئے ، کمانڈ کیس کی حساس تلاش کرے گی اور اسٹرنگ پر مشتمل تمام لائنیں واپس کردے گی۔ ملازم اس میں بغیر حساب کے حروف بڑے یا چھوٹے حروف میں ہیں۔

باقاعدہ اظہار کا استعمال کرتے ہوئے تلاش کریں۔

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

$گرفتشروعاتی مطلوبہ الفاظ*ختم ہونے والا کلیدی لفظ فائل نام۔

مثال کے طور پر ، testfile1 نامی فائل میں ایک لائن تلاش کرنے کے لیے جو سٹرنگ سے شروع ہوتی ہے اور سٹرنگ ڈیٹا پر ختم ہوتی ہے ، ہم نے درج ذیل کمانڈ استعمال کی ہے۔

$گرفتیہ.*ڈیٹا ٹیسٹ فائل 1۔

یہ پوری لائن کو پرنٹ کرے گا ٹیسٹ فائل 1۔ اظہار پر مشتمل (کلیدی لفظ شروع کرنا اور کلیدی الفاظ کا اختتام کرنا)

سرچ سٹرنگ کے بعد/اس سے پہلے لائنوں کی خاص تعداد پرنٹ کریں۔

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

$گرفت -تو <ن۔>سٹرنگ فائل کا نام

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

مثال کے طور پر ، یہ ہماری نمونہ فائل ہے۔ testfile2 .

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

$گرفت-توemployeei ملازم testfile2

اسی طرح ، کسی مخصوص فائل میں مماثل سٹرنگ سے پہلے لائنوں کی N تعداد ظاہر کرنے کے لیے ، درج ذیل نحو کا استعمال کریں:

$گرفت -بی <ن۔>سٹرنگ فائل کا نام

کسی مخصوص فائل میں سٹرنگ کے ارد گرد N نمبروں کو ظاہر کرنے کے لیے ، درج ذیل نحو کا استعمال کریں:

$گرفت -سی <ن۔>سٹرنگ فائل کا نام

تلاش کو نمایاں کرنا۔

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

اس مقصد کے لیے درج ذیل نحو استعمال کیا جا سکتا ہے۔

$گرفتسٹرنگ فائل کا نام--رنگ

میچوں کی تعداد گننا۔

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

$گرفتstringc سٹرنگ فائل کا نام۔

یہ ہماری نمونہ فائل ہے:

مندرجہ ذیل ایک کمانڈ کی مثال ہے جس نے لفظ کی تعداد کو لوٹایا۔ فائل نامی فائل میں ظاہر ہوا۔ ٹیسٹ فائل 3۔ .

الٹی تلاش۔

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

$گرفتstringv سٹرنگ فائل کا نام۔

مثال کے طور پر ، ایک فائل میں تمام لائنوں کو ظاہر کرنا۔ ٹیسٹ فائل 3۔ جس میں لفظ اکاؤنٹ نہیں ہے ، ہم نے درج ذیل کمانڈ استعمال کی ہے:

$گرفتaccountv اکاؤنٹ testfile3۔

دوسرے احکامات کے ساتھ گریپ کا استعمال۔

گریپ کو مختلف کمانڈ آؤٹ پٹ سے مطلوبہ نتیجہ فلٹر کرنے کے لیے بھی استعمال کیا جا سکتا ہے۔ مثال کے طور پر ، سے مناسب - انسٹال شدہ فہرست۔ کمانڈ آؤٹ پٹ ، آپ صرف ان پیکیجز کو ڈھونڈنا چاہتے ہیں جو خود بخود انسٹال ہوتے ہیں ، آپ grep کا استعمال کرتے ہوئے نتیجہ کو فلٹر کرسکتے ہیں:

$مناسب-انسٹالفہرست| گرفتخودکار

اسی طرح ، lscpu CPU کے بارے میں تفصیلی معلومات فراہم کرتا ہے۔ اگر آپ صرف سی پی یو فن تعمیر سے متعلق معلومات میں دلچسپی رکھتے ہیں تو ، آپ اسے درج ذیل کمانڈ کا استعمال کرکے فلٹر کرسکتے ہیں۔

$lscpu| گرفتفن تعمیر

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