د لینکس یوګپ کمانډ بیلګې

پېژندنه

د لینکس ګپ پی کمان د فلټر کولو د طریقې په توګه کارول کیږي.

GREP د Global Regular Expression Printer لپاره دی او له همدې امله د دې اغیزمن کارولو لپاره، تاسو باید د منظم بیانونو په اړه ځینې پوهه ولرئ.

په دې مقاله کې، زه تاسو ته یو شمیر مثالونه درکوم چې تاسو به د grep کمانډ په پوهیدلو کې مرسته وکړي.

01 د 09

د GREP په کارولو سره د A سټینګ لپاره د لټون لپاره څنګه

د لینکس یوګپ کمانډ.

فکر وکړئ تاسو د ماشومانو د کتاب د سرلیکونو سره د کتاب فایل فایل لرئ:

د ټولو "" "کلمې سره د ټولو کتابونو موندلو لپاره تاسو لاندې لاندې نخشه کاروئ:

دا کتاب

لاندې پایلې به بیرته راشي:

په هر قضیه کې، "کلمه" به په ډاګه شي.

په ياد ولرئ چې پلټنه د قضيې حساس ده که چېرې يو سرليک د "دي" په ځای "دي" درلود نو بيا به بېرته نه راځي.

د قضیې په نظر کې نیولو سره تاسو کولی شئ لاندې سویچ اضافه کړئ:

کتابونه - غځول - قضیه کول

تاسو کولی شئ په لاندې ډول د -i سوئچ کارول هم وکاروئ:

کتابونه

02 د 09

د وحشیډونو په کارولو سره د A سټینګ کې لټون

د ګوتو حکم ډیر پیاوړی دی. تاسو د پایلو فلټر کولو لپاره د ډیزاین سمبالولو تخنیکونو څخه کار اخلی.

په دې مثال کې، زه به تاسو ته وښیم چې څنګه د وحشیډډ کارډ په واسطه په یوه فایل کې د تار لپاره لټون کول.

تصور وکړئ چې تاسو یوه فایل لري د سکاټلینټ ځایونو نومونو سره ځایونه نومول شوي:

ابرډین

ابرسټیټ

ابرورور

انوروري

ناورین

نوی برګ

نوي ماین

نوی ګالوی

ګالاسګ

ایډینبورګ

که تاسو غواړئ هغه ټول ځایونه چې د انټرنیټ سره په نوم کې پیدا کول غواړئ نو لاندې نخشه کاروئ:

د grep Inver * ځایونه

ستوری (*) وحی کارډ د 0 یا ډیری لپاره ولاړ دی. نو له همدې کبله که تاسو یو ځای ولرئ یا د بل ځای په نوم یادیږي نو دوی به بیرته راستانه شي.

یو بل وحشی کارت چې تاسو یې کارولی شئ هغه موده ده (.). تاسو کولی شئ د دې یو لیک سره سمون وکاروئ.

د ګوتو انفرادي ځایونه

پورته پورتنۍ قومانده به هغه ځایونه ومومي چې انوروري او انورریټ یې په نوم یادیږي مګر ایوریریا به ونه موندل شي ځکه چې یوازې د دوو R تر مینځ یو وحشیانه کار کول کیدای شي د یوې دورې لخوا رد شوي وي.

د ویرډ کارډ دوره ګټوره ده مګر دا د ستونزو لامل کیدی شي که تاسو د هغه متن برخې په توګه وي چې تاسو یې لټون کوئ.

د مثال په توګه د ډومین نومونو لیست وګورئ

د ټولو about.com.com موندلو لپاره تاسو کولی شئ د لاندې نخشه کارولو په کارولو سره لټون وکړئ:

grep * about * domainnames

پورتنۍ قوماندې به په هغه صورت کې راټیټه شي که لیست په لاندې نوم کې شامل وي:

تاسو کولی شئ، لاندې نخشه هڅه وکړئ:

grep * about.com domainnames

دا به سم کار وکړي مګر تر هغه وخته چې ډومین ډومین نوم نه وي:

aboutycom.com

د رښتیا د about.com.com لپاره لټون ته اړتیا لرئ تاسو باید د لاندې ټیم څخه لرې وساتل شئ:

grep * د \ .com نومونو نومونو په اړه

وروستۍ وینډوکار تاسو ته ښودل چې د پوښتنې نښه ده چې د صفر یا یو کریکٹر لپاره وي.

د مثال په توګه:

یوروپ لی پلی پلی نومونه

پورتنۍ قوماندې به د ابرډین، ابرسټیټوت یا حتی د ګوتو بیرته راشي.

03 of 09

د ګوتو په کارولو سره د کرښې د پیل او پای په سټراټیټ کې لټون

کیریټ (^) او د ډالر ($) نښه تاسو ته د لینونو په پیل او پای کې د نمونو لټون کولو اجازه درکوي.

تصور وکړئ چې تاسو د لاندې ټیم نومونو سره فوټبال په نوم یو فایل لرئ:

که تاسو غواړئ هغه ټیمونه ومومئ کوم چې د مانچینټر سره پیل شوي تاسو به لاندې نخشه کاروئ:

grep ^ د منچستر ټیمونه

پورتنی قوماندانی به د منچستر سایټ او د منچیسډ یونین ته راستانه شي مګر د مانچیسټر څخه ملګری نه دی.

په بدیل سره تاسو کولی شئ ټولې ټیمونه چې د متحده ایاالتو سره پای ته رسیږي د لاندې نخشه کارولو څخه کار واخلئ:

د ملګرو ملتونو ټیمونه

پورتنۍ قوماندې به د منچستر یونین او نیوکاسل متحد ته راستانه شي، مګر د مانچستر د متحده ایالاتو FC نه.

04 د 09

شمېرل د شمېرنې شمېر د grep کارول

که تاسو نه غواړئ اصلي لیګونه چې د ګوتو په کارولو سره یو ډول ډول سره سمون ولري مګر تاسو یوازې غواړئ پوه شئ چې لاندې سایټس څنګه کارولی شئ؟

د grep -c نمونې انټرنېټ

که چیرې بیلګه دوه برابره وي نو دوهم نمبر به بیرته راستانه شي.

05 د 09

ټول هغه شرایط ومومئ چې د ګوتو په کارولو سره سمون نه کوي

تصور وکړئ تاسو د لاندنیو هیوادونو سره د ځای نومونو لیست لرئ په لاندې ډول دي:

تاسو ممکن محسوس کړئ چې کولیین بیل بیله هغه هیواد پورې تړاو نلري.

د ټولو هغو ځایونو لټون چې تاسو یې یو هیواد سره کولی شئ لاندې لاندې نخشه کاروئ:

د ځمکې ځمکه $ ځایونه

د پایلو بیرته راستنیدنه به د کولونین بیل پرته پرته ټول ځایونه وي.

دا په څرګنده توګه د هغو ځایونو لپاره کار کوي چې په ځمکه کې پای ته رسیږي (سخته علمي).

تاسو کولی شئ د لاندې نخشه کارولو په کارولو سره بدلون راولی:

grep -v ځمکې $ ځایونه

دا به هغه ټولې سیمې پیدا کړي چې د ځمکې سره پای ته نه رسیږي.

06 د 09

د خالي خالي کارولو په وختونو کې خالي خالي لیکونه لټول

تصور وکړئ چې تاسو د انټرنېټ فایل لرئ کوم چې د دریمې ډلې غوښتنلیک لخوا کارول کیږي کوم چې د دوتنې لوستل ودروي کله چې دا خالي خالي لیک په الندې ډول موندل کیږي:

کله چې غوښتنلیک د لیورپول وروسته لیک ته ورسیږي نو دا به د لوست مخه ونیسي معنی چې کولونین بیل بشپړه شوی وي.

تاسو کولی شئ د لاندې نخشه سره د خالي لینونو لټولو لپاره یوپپ استعمال کړئ:

grep ^ $ ځایونه

له بده مرغه دا په ځانګړې توګه ګټوره نه ده ځکه چې دا یوازې خالي کرښه بیرته راګرځي.

تاسو کولی شئ د چیک په توګه د خالي لینونو شمیره وګورئ ترڅو وګورئ چې دا فایل په لاندې ډول معتبر دی:

grep -c ^ $ ځایونه

په هرصورت دا به ډیر ګټور وي چې د کرښې شمیره معلومه کړي چې یو خالي کرښه لري ترڅو تاسو دوی بدل کړئ. تاسو کولی شئ د لاندې قوماندې سره وکړئ:

grep -n ^ $ ځایونه

07 د 09

د لویو یا کم ټیسټ اکتشافو د سختولو لپاره د grep کارولو لټون څنګه کولی شو

د grep کارول تاسو کولی شئ معلومه کړئ چې په فایل کې کومه لینونه د لاندې نخشه کارولو په کارولو سره لوړې کرښې لري:

د grep '[AZ]' د دوتنې نوم

مربع برکټونه [] اجازه راکړئ چې د حرفونو لړۍ وټاکئ. په پورته بېلګه کې دا هغه ځانګړتیاوی سره سمون لري چې د A او Z ترمنځ وي.

له دې امله د کوچني کرکټرونو سره سمون خوري چې تاسو کولی شئ لاندې نخشه کاروئ:

د grep '[az]' د دوتنې نوم

که تاسو غواړئ یوازې د لیکونو سره سمون ومومئ او شمیره یا نور سمبولونه تاسو کولی شئ د لاندې نخښه کارولو کار وکارئ:

د grep '[a-zA-Z]' د نوم نوم

تاسو کولی شئ په لاندې ډول سره د هغه شمیر سره وکړئ:

د grep '[0-9]' د نوم نوم

08 د 09

د ګوتو په کارولو سره د بیرته راستنیدو لپاره لټون کول

تاسو کولی شئ د تکرار نمونې لټون کولو لپاره د کاره بریکونو {} کاروئ.

تصور وکړئ چې تاسو د تلیفون شمیرې سره لاندینۍ فایل لري:

تاسو پوهیږئ چې د نمبر لومړۍ برخه باید درې ګوتو ته اړتیا ولري او تاسو هغه لینونه پیدا کړئ چې دا شکل سره سمون نه لري.

د پخوانۍ بېلګې څخه تاسو پوهیږئ چې [0-9] ټوله شمیره په یوه فایل کې راولي.

په دې مثال کې موږ هغه لینونه غواړو چې د دریو حجمونو سره پیل کوي وروسته د هایفین (-). تاسو کولی شئ د لاندې نخشه سره دا کولی شئ:

grep "^ [0-9] [0-9] [0-9] -" شمېرې

لکه څنګه چې موږ د پخوانیو مثالونو څخه پوهیږو کارات (^) پدې مانا لري چې کرښه باید د لاندې شکل سره پیل شي.

[0-9] به د 0 او 9 ترمنځ د هر نمبر لټون وکړي پداسې حال کې چې دا درې ځله د 3 شمېرو سره سمون لري. په پای کې دلته یو هایفین شتون لري چې ردوی چې یو هایفین باید درې شمېره بریالي کړي.

د ځنګلونو د کارولو په واسطه تاسو کولی شئ لاندیني لاندیني لټون په الندې ډول ترسره کړئ:

grep "^ [0-9] \ {3 \} -" شمېرې

سلیش {بریکټ له منځه ځي ځکه چې دا د منظم بیان یوه برخه ده بلکې په هغه څه چې دا ویل کیږي [0-9] {3} دی چې دا د 0 او 9 درې ځلو ترمنځ د هر یو شمیر معنی لري.

د کروری برکټونه هم په لاندې ډول کارول کیدی شي:

{510}

{5،}

{510} پدې مانا لري چې هغه څوک چې پلټنه کیده باید لږترلږه 5 ځلې تکرار شي مګر له لسو څخه زیات نه وي پداسې حال کې چې {5،} دا معنی لري چې کردار باید لږ تر لږه 5 ځلې تکرار شي مګر دا د هغې څخه ډیر وي.

09 09

د نورو قوماندې څخه د محصول محصول کارول د grep کارول

تر دې دمه موږ د انفرادي فایلونو دننه سمونونه لیدلي مګر خوپین کولی شي د محصول له نورو حکمونو څخه د نمونو لپاره د انډول په توګه کار واخلي.

د دې یوه لوی مثال د ps پوتینټ کاروي چې فعالې پروسې لیست کوي.

د مثال په توګه لاندې کمانډ چلوي:

ps -ef

ستاسو په سیسټم کې ټولې روانې پروسې به وښودل شي.

تاسو کولی شئ د ځانګړي چلن پروسې لټون په لاندیني ډول د توپ استعمال وکړو:

ps -ef | د ګوتو فایرفوکس

لنډیز

د ګوتو قومانده د لینکس اساسي بنسټ دی او دا هغه یو دی چې د زده کړې ښه ارزښت لري ځکه چې تاسو د ترمیم په وخت کې د فایلونو او پروسو لټون کولو کې ستاسو ژوند خورا اسانه کوي.