logo

Греп команда у Линук/Уник-у са примерима

Команда 'греп' значи 'штампање глобалног регуларног израза' . греп команда филтрира садржај датотеке што олакшава нашу претрагу.

То је услужни програм командне линије за претраживање група података у облику обичног текста за редове који су исти као регуларни израз. Име 'дршка' долази из команде, односно ед, која садржи исти ефекат. Првобитно, греп је био дизајниран за Уник оперативни систем, али је касније постао доступан за сваки систем сличан Уник-у и неколико других попут ОС 9.

Греп филтер проналази датотеку за одређени образац карактера и приказује сваки ред који укључује тај образац. Знакови треба да буду под наводницима ако се појављују у параметру шаблона са посебним значењем за шкољку. Обично морамо ставити цео образац у један наводник ако параметар шаблона није уобичајен низ.

У изразу као што је [а-з], знак минус (-) цмл описује опсег заснован на тренутном редоследу сређивања. Редослед сређивања може да специфицира еквивалентне класе у опсегу знакова за употребу. Команда греп претпоставља стдин када се не помињу ниједна датотека.

Образац се назива регуларни израз који се налази унутар датотеке. Узорак су ограничени регуларни изрази у формату команде егреп или ед. Команда греп примењује чврст недетерминистички алгоритам. То је корисно када треба да филтрирамо велике датотеке евиденције.

Кратка историја греп

Пре него што је насловљен, греп је био поверљиви услужни програм који је навео Кен Тхомпсон да пронађете датотеке за неколико образаца. Непознато за своје постојање, Доуг Мцллрои затражио од Томпсона да наведе такву функцију. Одговарајући да ће преко ноћи смислити такав алат. Томпсон је направио побољшања и исправио ритове око сат времена у свом програму познатом као 'с' (или претраживати). Следећег дана је представио функцију Меклироју, који је рекао да је то исто како он жели. Томпсонов извештај може описати веровање да је команда греп специфицирана преко ноћи.

Томпсон је навео почетну верзију у ПДП-11 асемблерском језику за подршку Лее Е. МцМохан провера текста Федералистичких радова да би се одлучило о ауторству појединог листа. Уређивач текста је имао подршку за регуларни израз, али није могао да се користи на тако великом тексту; Томпсон је копирао тај код у самостални алат. Изабрао је име због у ед; команда греп би штампала сваки ред на исти начин као и описани образац. Прво, греп је додат у верзију 4 Уника, рекавши то 'углавном се наводи као прототипски софтверски алат' , Мцллрои је одобрио греп са 'неопозиво укорењен' Томпсонова филозофија алата у Унику.

Имплементације греп

Низ греп имплементација је присутан у неколико окружења за развој софтвера и оперативних система. Ране верзије су укључивале фгреп и егреп, представљене у верзији 7 Уник-а. Верзија егреп подржава синтаксу за проширени регуларни израз који је укључио Алфред Ахо након оригиналне имплементације регуларног израза Кена Томпсона. Верзија фгреп проналази било коју листу фиксних стрингова са Ахо-Цорасицк алгоритам за подударање стрингова . Ове бинарне верзије су доступне у модерним системима, повезујући се на греп или позивајући греп скрипту љуске користећи исправну заставу која је додата док су генерално распоређени на ПОСИКС системима.

оквир јава колекција

Остале команде укључују 'дршка' реч за представљање они проналазе алате, обично оне који зависе од подударања регуларних израза. На пример, услужни програм, тј. 'пгреп' , приказује процесе чији су наслови исти као наведени регуларни израз.

  • Греп је наслов уграђене функције која тражи елементе унутар листе који забављају одређено својство у Перл програмски језик.
  • Обично се ова функција вишег реда зове 'филтер' или 'где' на другом језику.
  • Команда, тј. пцрегреп , је греп имплементација која користи синтаксу за Перл регуларни израз. Иста функционалност се може додати у греп ГНУ верзију користећи -П заставицу.
  • Такође, греп портови (нпр ГнуВин32 и Цигвин ) изврши на Мицрософт Виндовс-у. Неколико верзија Виндовс-а пружа исту команду финдстр или кгреп.
  • Такође, команда греп је део МСКС-ДОС2 алата у АСЦИИ-у за 2 верзију МСКС-ДОС-а.
  • Наредбе фгреп, егреп и греп су послате у ИБМ и ОС.
    Софтвер Адобе ИнДесигн има ГРЕП функције (од ЦС3 издања) у дијалошком оквиру картице промени/пронађи 'ГРЕП' и специфицира се помоћу ЦС4 у 'ГРЕП стилови' стилови пасуса.

Како инсталирати греп у Линук?

Греп долази унапред инсталиран у скоро свакој дистрибуцији Линук-а. Међутим, у случају да га можемо инсталирати помоћу доње команде у прозору терминала ако недостаје у нашем систему:

 $ sudo apt-get install grep 

греп са цеви

како извршити скрипту

Команда 'греп' се обично користи са цевима (|) .

Синтакса:

 command | grep 

Пример:

 cat marks.txt | grep 9 

Линук Греп филтери1

Погледајте горњи снимак, команда греп филтрира све податке који садрже '9'.

греп без цеви

Може се користити и без цеви.

Синтакса:

 grep 

Пример:

 grep 9 marks.txt 

Линук Греп филтери2

Погледајте горњи снимак, команда греп ради исти посао као претходни пример, али без цеви.

греп опције

    греп -вМ: Команда 'греп -в' приказује редове који се не подударају са наведеном речи.

    Синтакса:

     grep -v 

    Пример:

     grep -v 9 marks.txt 

    Линук Греп филтери3

    Погледајте горњи снимак, команда 'греп -в 9 маркс.ткт' приказује редове који не садрже нашу реч за претрагу '9'.

    греп -и: Команда 'греп -и' филтрира излаз на начин без обзира на велика и мала слова.

    Синтакса:

     grep -i 

    Пример:

     grep -i red exm.txt 

    Линук Греп филтери4

    Погледајте горњи снимак, команда 'греп -и ред екм.ткт' приказује све линије које садрже 'црвено' било да су написане великим или малим словима.

    пвр пуна форма
    греп -А/ греп -Б/ греп -Ц

    греп -Команда се користи за приказ линија после резултата .

    греп -Б команда се користи за приказ линија пре резултата .

    греп -Ц команда се користи за приказ ред после и ред пре резултат.

    Можете користити (А1, А2, А3.....)(Б1, Б2, Б3....)(Ц1, Ц2, Ц3....) да прикажете било који број линија.

    Синтакса:

     grep -A grep -B grep -C 

    Пример:

     grep -A1 yellow exm.txt grep -B1 yellow exm.txt grep -C1 yellow exm.txt 

    Линук Греп филтери5

    Погледајте горњи снимак, команда 'греп -А1 жути екм.ткт' приказује тражени ред са следећим редом, командом 'греп -Б1 жути екм.ткт' приказује тражени ред са једним претходним редом и командом 'греп -Ц1 жути екм.ткт' приказује тражени ред са једним претходним и следећим редом.