Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Jump to content

Grep

Վիքիպեդիայից՝ ազատ հանրագիտարանից
ՏեսակUNIX օգտակարություն
ՀեղինակՔեն Թոմփսոն
Նախագծումը՝Քեն Թոմփսոն
ՕՀՅունիքս և յունիքսանման օպերացիոն համակարգ
Լույս տեսավ՝1973
 Grep Վիքիպահեստում

grep, հրամանի տողով աշխատող ծրագիր, որը գնտում է մուտքային տողեր, որոնք պատասխանատու են տրված կանոնավոր արտահայտություններ համար, և արտածում է դրանք, եթե արտածումը կասեցված չէ հատուկ բանալու միջոցով։ Անունը առաջացել է անգլերեն «search globally for lines matching the regular expression, and print them» նախադասաությունից, որը թարգմանվում ինչպես՝ «ամենուրեք փնտրել տողեր, որոնք համապատասխանում են կանոնավոր արտահայտությանը և արտածել դրանք»։

Սկզբնական տարբերակը նախատեսված է եղել UNIX օպերացիոն համակարգերի համար։

Գոյություն ունի grep-ի տարատեսակներ՝ egrep (մշակումը է ընդլայնված կանոնավոր արտահայտությունները), fgrep (նիշերով՝ $*[]^|()\), rgrep (որը իր մեջ պարունակաում է ռեկուսրիվ որոնում)։ Ինչպես ասվում է man-ում՝ «egrep — նույն է, ինչ grep -E։ fgrep — նույն է, ինչ grep -F։ rgrep — նույն է, ինչ grep -r»։

Ծրագիրը գրվել է Քեն Թոմփսոնի կողմից, որպես ֆայլերի որոնման ծրագիր։ Նրան դիմել է իր մենեջեր Դագ Մաքիլրոյը, ով հետաքրքրվել է ծրագրի արսենալով։ Թոմփսոնը պատասխանեց, որ նա կմտածի այդ մասին մեկ ժամ, սակայն այդ ընթացքում նա ուղում էր սխալներ և կատարում էր բարելավումներ։ Հաջորդ օրը նա Մաքիլյրոյին ներկայացրեց grep-ը և նա ասաց, որ դա այն է ինչ նա ուզում է։ Թոփսոնի զեկույցը կարող է պարզաբանել, թե ինչու է grep-ը գրվել գիշերը[1]։

Այսպիսով ծրագրի առաջին տարբերակը գրվել է Քեն Թոմփսոնի կողմից PDP-11 լեզվով, որը պետք է օգներ Լի Է․ ՄաքՄահոնին վերլուծել ֆեդերալիստական թերթերը՝ որոշելու անհատական թերթերի հեղինակությունը[2]։

Հաջորդ օրինակում պատկերված է grep հրամանի տրադրած տվյալները տարբեր փաստարկների դեպքում․

$ grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

$ grep -n root /etc/passwd
1:root:x:0:0:root:/root:/bin/bash
12:operator:x:11:0:operator:/root:/sbin/nologin

$ grep -c false /etc/passwd
7

Ծանոթագրություններ

[խմբագրել | խմբագրել կոդը]
  1. VCF East 2019 -- Brian Kernighan interviews Ken Thompson (video). YouTube. 2019 թ․ մայիսի 6.
  2. Computerphile, Where GREP Came From, interview with Brian Kernighan

Արտաքին հղումներ

[խմբագրել | խմբագրել կոդը]