پېژندنه
د لینکس ګپ پی کمان د فلټر کولو د طریقې په توګه کارول کیږي.
GREP د Global Regular Expression Printer لپاره دی او له همدې امله د دې اغیزمن کارولو لپاره، تاسو باید د منظم بیانونو په اړه ځینې پوهه ولرئ.
په دې مقاله کې، زه تاسو ته یو شمیر مثالونه درکوم چې تاسو به د grep کمانډ په پوهیدلو کې مرسته وکړي.
01 د 09
د GREP په کارولو سره د A سټینګ لپاره د لټون لپاره څنګه
فکر وکړئ تاسو د ماشومانو د کتاب د سرلیکونو سره د کتاب فایل فایل لرئ:
- رابین هود
- واړه سره ټوپۍ واله
- لوخی
- Goldilocks او درې دریزونه
- سپوږمۍ او اوه واړه پوښونه
- پیننیچیو
- بلی کې په Hat کې
- درې کوچني سورونه
- Gruffalo
- چارلي او د چاکلیټ فابریکه
د ټولو "" "کلمې سره د ټولو کتابونو موندلو لپاره تاسو لاندې لاندې نخشه کاروئ:
دا کتاب
لاندې پایلې به بیرته راشي:
- Goldilocks او درې دریزونه
- سپوږمۍ او اوه واړه پوښونه
- بلی کې په Hat کې
- درې کوچني سورونه
- Gruffalo
- چارلي او د چاکلیټ فابریکه
په هر قضیه کې، "کلمه" به په ډاګه شي.
په ياد ولرئ چې پلټنه د قضيې حساس ده که چېرې يو سرليک د "دي" په ځای "دي" درلود نو بيا به بېرته نه راځي.
د قضیې په نظر کې نیولو سره تاسو کولی شئ لاندې سویچ اضافه کړئ:
کتابونه - غځول - قضیه کول
تاسو کولی شئ په لاندې ډول د -i سوئچ کارول هم وکاروئ:
کتابونه
02 د 09
د وحشیډونو په کارولو سره د A سټینګ کې لټون
د ګوتو حکم ډیر پیاوړی دی. تاسو د پایلو فلټر کولو لپاره د ډیزاین سمبالولو تخنیکونو څخه کار اخلی.
په دې مثال کې، زه به تاسو ته وښیم چې څنګه د وحشیډډ کارډ په واسطه په یوه فایل کې د تار لپاره لټون کول.
تصور وکړئ چې تاسو یوه فایل لري د سکاټلینټ ځایونو نومونو سره ځایونه نومول شوي:
ابرډین
ابرسټیټ
ابرورور
انوروري
ناورین
نوی برګ
نوي ماین
نوی ګالوی
ګالاسګ
ایډینبورګ
که تاسو غواړئ هغه ټول ځایونه چې د انټرنیټ سره په نوم کې پیدا کول غواړئ نو لاندې نخشه کاروئ:
د grep Inver * ځایونه
ستوری (*) وحی کارډ د 0 یا ډیری لپاره ولاړ دی. نو له همدې کبله که تاسو یو ځای ولرئ یا د بل ځای په نوم یادیږي نو دوی به بیرته راستانه شي.
یو بل وحشی کارت چې تاسو یې کارولی شئ هغه موده ده (.). تاسو کولی شئ د دې یو لیک سره سمون وکاروئ.
د ګوتو انفرادي ځایونه
پورته پورتنۍ قومانده به هغه ځایونه ومومي چې انوروري او انورریټ یې په نوم یادیږي مګر ایوریریا به ونه موندل شي ځکه چې یوازې د دوو R تر مینځ یو وحشیانه کار کول کیدای شي د یوې دورې لخوا رد شوي وي.
د ویرډ کارډ دوره ګټوره ده مګر دا د ستونزو لامل کیدی شي که تاسو د هغه متن برخې په توګه وي چې تاسو یې لټون کوئ.
د مثال په توګه د ډومین نومونو لیست وګورئ
- linux.about.com
- pcsupport.about.com
- mp3.about.com
- minecraft.about.com
- androidgames.about.com
- netforbeginners.about.com
- everydaylinuxuser.com
- google.co.uk
- google.au
- direct.gov.uk
د ټولو about.com.com موندلو لپاره تاسو کولی شئ د لاندې نخشه کارولو په کارولو سره لټون وکړئ:
grep * about * domainnames
پورتنۍ قوماندې به په هغه صورت کې راټیټه شي که لیست په لاندې نوم کې شامل وي:
- everydaylinuxuser.com/about.html
تاسو کولی شئ، لاندې نخشه هڅه وکړئ:
grep * about.com domainnames
دا به سم کار وکړي مګر تر هغه وخته چې ډومین ډومین نوم نه وي:
aboutycom.com
د رښتیا د about.com.com لپاره لټون ته اړتیا لرئ تاسو باید د لاندې ټیم څخه لرې وساتل شئ:
grep * د \ .com نومونو نومونو په اړه
وروستۍ وینډوکار تاسو ته ښودل چې د پوښتنې نښه ده چې د صفر یا یو کریکٹر لپاره وي.
د مثال په توګه:
یوروپ لی پلی پلی نومونه
پورتنۍ قوماندې به د ابرډین، ابرسټیټوت یا حتی د ګوتو بیرته راشي.
03 of 09
د ګوتو په کارولو سره د کرښې د پیل او پای په سټراټیټ کې لټون
کیریټ (^) او د ډالر ($) نښه تاسو ته د لینونو په پیل او پای کې د نمونو لټون کولو اجازه درکوي.
تصور وکړئ چې تاسو د لاندې ټیم نومونو سره فوټبال په نوم یو فایل لرئ:
- تورپول
- لیورپول
- منچستر ښار
- د لیسیستر ښار
- منچستر یونټ
- نیوکسل مل
- FC د متحده ایالاتو مانچستر
که تاسو غواړئ هغه ټیمونه ومومئ کوم چې د مانچینټر سره پیل شوي تاسو به لاندې نخشه کاروئ:
grep ^ د منچستر ټیمونه
پورتنی قوماندانی به د منچستر سایټ او د منچیسډ یونین ته راستانه شي مګر د مانچیسټر څخه ملګری نه دی.
په بدیل سره تاسو کولی شئ ټولې ټیمونه چې د متحده ایاالتو سره پای ته رسیږي د لاندې نخشه کارولو څخه کار واخلئ:
د ملګرو ملتونو ټیمونه
پورتنۍ قوماندې به د منچستر یونین او نیوکاسل متحد ته راستانه شي، مګر د مانچستر د متحده ایالاتو FC نه.
04 د 09
شمېرل د شمېرنې شمېر د grep کارول
که تاسو نه غواړئ اصلي لیګونه چې د ګوتو په کارولو سره یو ډول ډول سره سمون ولري مګر تاسو یوازې غواړئ پوه شئ چې لاندې سایټس څنګه کارولی شئ؟
د grep -c نمونې انټرنېټ
که چیرې بیلګه دوه برابره وي نو دوهم نمبر به بیرته راستانه شي.
05 د 09
ټول هغه شرایط ومومئ چې د ګوتو په کارولو سره سمون نه کوي
تصور وکړئ تاسو د لاندنیو هیوادونو سره د ځای نومونو لیست لرئ په لاندې ډول دي:
- ابرډین سکاټلینډ
- glasgow scotland
- لیورپول انګلستان
- کلویین بیل
- لندن لندن
تاسو ممکن محسوس کړئ چې کولیین بیل بیله هغه هیواد پورې تړاو نلري.
د ټولو هغو ځایونو لټون چې تاسو یې یو هیواد سره کولی شئ لاندې لاندې نخشه کاروئ:
د ځمکې ځمکه $ ځایونه
د پایلو بیرته راستنیدنه به د کولونین بیل پرته پرته ټول ځایونه وي.
دا په څرګنده توګه د هغو ځایونو لپاره کار کوي چې په ځمکه کې پای ته رسیږي (سخته علمي).
تاسو کولی شئ د لاندې نخشه کارولو په کارولو سره بدلون راولی:
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
د ګوتو په کارولو سره د بیرته راستنیدو لپاره لټون کول
تاسو کولی شئ د تکرار نمونې لټون کولو لپاره د کاره بریکونو {} کاروئ.
تصور وکړئ چې تاسو د تلیفون شمیرې سره لاندینۍ فایل لري:
- 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 درې ځلو ترمنځ د هر یو شمیر معنی لري.
د کروری برکټونه هم په لاندې ډول کارول کیدی شي:
{510}
{5،}
{510} پدې مانا لري چې هغه څوک چې پلټنه کیده باید لږترلږه 5 ځلې تکرار شي مګر له لسو څخه زیات نه وي پداسې حال کې چې {5،} دا معنی لري چې کردار باید لږ تر لږه 5 ځلې تکرار شي مګر دا د هغې څخه ډیر وي.
09 09
د نورو قوماندې څخه د محصول محصول کارول د grep کارول
تر دې دمه موږ د انفرادي فایلونو دننه سمونونه لیدلي مګر خوپین کولی شي د محصول له نورو حکمونو څخه د نمونو لپاره د انډول په توګه کار واخلي.
د دې یوه لوی مثال د ps پوتینټ کاروي چې فعالې پروسې لیست کوي.
د مثال په توګه لاندې کمانډ چلوي:
ps -ef
ستاسو په سیسټم کې ټولې روانې پروسې به وښودل شي.
تاسو کولی شئ د ځانګړي چلن پروسې لټون په لاندیني ډول د توپ استعمال وکړو:
ps -ef | د ګوتو فایرفوکس