Греп наредба: моћан алат за проналажење текста из терминала

Команда Греп

Готово свако ко има рачунар или ко ради са њим знаће тастерску пречицу Цтрл + Ф за проналажење текста. Знак „Ф“ долази од „Пронађи“, „пронађи“ на енглеском и може се користити, на пример, за проналажење текста на веб страници. Ова пречица је такође доступна у многим апликацијама, постоје програми који користе „Б“ за „претрагу“, али ове пречице раде само ако смо унутар апликације и са отвореном датотеком. У Линуку имамо врло моћне алате које можемо покренути са терминала и ако желимо пронаћи било који текст који се налази у нашем тиму ми ћемо користити команду греп.

греп То је наредба која ће нам помоћи да пронађемо текст у датотеци коју назначимо. Његово име потиче од г / ре / п, наредбе која ради за нешто слично у Уник / Линук уређивачу текста. Као и многе друге команде, греп Има много доступне опције које ћемо додати у облику слова и сваки ће служити другачији задатак. Комбиновањем ових опција моћи ћемо да извршимо сложене претраге у једној или више датотека. Овде ћемо вам показати све што треба да знате.

са греп наћи ћемо било који текст у било којој датотеци

Прво ћемо објаснити доступне опције:

  • -i: неће разликовати велика и мала слова.
  • -w: приморајте га да пронађе само одређене речи.
  • -v: бира линије које се не подударају.
  • -n: приказује број реда са траженим речима.
  • -h: уклања префикс из назива Уник датотеке у излазу.
  • -r: рекурзивно претражује директоријуме.
  • -R: попут -р, али пратите све симболичне везе.
  • -l: приказује само имена датотека са изабраним редовима.
  • -c- Приказује само један број по датотеци одабраних редова.
  • -Боја: Приказује одговарајуће обрасце у бојама.

На слици чији сте наслов овог чланка потражио сам реч „Слике“ у датотеци „830.десктоп“ која се налази на тој путањи. Као што видите, написао сам:

grep Imágenes /home/pablinux/Documentos/830.desktop

Имајте на уму да ћемо у овом чланку написати примере који морају бити измењени у складу са нашим преференцама за претрагу. Изговарајући „Датотека“, „Ворд“ итд., Мислићемо на датотеку са њеном путањом. Да сам управо написао „греп Имагес 830.десктоп“, примио бих поруку у којој се каже да датотека не постоји. Или би било тако, осим ако датотека није била у основном директоријуму.

Други примери би били:

  • греп -и имагес /хоме/паблинук/Доцументос/830.десктоп, где би „слике“ била реч коју желимо да пронађемо, а остало датотека са њеном путањом. Овај пример би тражио „слике“ у датотеци „830.десктоп“, која нису осетљива на велика и мала слова.
  • греп -Р слике: претраживао би све редове директоријума и све његове поддиректоријуме у којима се налази реч „слике“.
  • греп -ц пример тест.ткт: ово би нас тражило и показало укупан број појављивања примера у датотеци која се назива „тест.ткт.

Са грепом такође можемо тражити датотеке

Ако је оно што желимо пронаћи датотеку 830.десктоп, написаћемо следећу команду:

grep 830.desktop

Ово ће извести а потражите датотеку «830.десктоп» у нашој личној фасциклиОдносно, ако се датотека налази у личној фасцикли другог корисника, она неће бити пронађена. Ово је најнормалнија ствар на свету, јер корисник нема дозволу за приступ садржају другог корисника без своје лозинке.

Како изводити рекурзивне претраге

греп такође нам омогућава вршите претраге у складу са понављајућим правилима или смерницама. На пример, прочитајте све датотеке у сваком директоријуму које садрже реч „Паблинук“. За ово ћемо написати:

grep -r Pablinux /home/

О добро:

grep -R Pablinux /home/

Резултате за „Паблинук“ видећемо у одвојеном реду којем претходи име датотеке у којој је пронађена. Ако не желимо да видимо имена датотека у излазу података, користићемо опцију -х (од "сакриј"; сакриј):

grep -h -R Pablinux /home/

Можемо се придружити опцијама и написати „-хР“ без наводника.

Како се тачно претражују речи

Понекад постоје датотеке које садрже оно што желимо да потражимо за нечим другим. На пример, то нам се може догодити у сложеним речима, а претрагом „шума“ можемо пронаћи „ренџере“. Ако желимо наћи тачну реч користићемо опцију -в:

grep -w bosques /home/pablinux/Documentos/vacaciones.txt

Горња команда би тражила „шуме“, занемарујући ренџере, у датотеци „вацатион.ткт“ на назначеној путањи. Ако желимо да претражимо две различите речи, користићемо наредбу егреп:

egrep -w bosques|plantas /ruta/del/archivo

Знајте колико се пута реч појављује у датотеци

греп такође је способан за изброј колико се пута реч појављује у датотеци. За ово ћемо користити опцију -ц:

grep -c prueba /ruta/al/archivo

Додавањем опције -н оно што ћемо видети је број реда у којем се реч појављује.

Обртане претраге

Можемо и супротно, тј. тражи редове који не садрже реч. За ово ћемо користити опцију -в, која би била следећа:

grep -v la ruta/al/archivo

Горња команда би приказала све редове који нису садржали реч „тхе“. Ово може добро доћи у документима или списковима у којима се реч понавља више пута и из неког разлога морамо да приступимо осталим редовима.

Приступ информацијама о систему помоћу греп

ПЦ модел

греп не само да је у стању да претражује датотеке. Такође је у могућности да прегледају системске информације. На претходном снимку екрана можемо видети како нам показује који модел рачунара имамо (знам да то није најмоћнији лаптоп на свету). За ово смо користили наредбу:

cat /proc/cpuinfo | grep -i 'Model'

О добро:

grep -i 'Model' /proc/cpuinfo

Ако желимо да видимо имена диск јединица, написаћемо:

dmesg | egrep '(s|h)d[a-z]'

Како навести само одговарајућа имена датотека

Ако желимо да видимо листу са само именима датотека које се подударају са претрагом, користићемо опцију -л као што је приказано доле:

grep -l 'main' *.c

А ако желимо да реч видимо у бојама, написаћемо:

grep --color palabra /ruta/al/archivo

Као што видите, команда греп је врло моћан алат Вреди то посебно у случајевима када се не сећамо где смо нешто написали или у програмирању. Поред тога, помаже нам да сазнамо системске информације на начин који ће се свидети љубитељима терминала. Да ли вам је ово упутство о наредби за проналажење текстова корисно греп?


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.

  1.   нордри дијо

    Поздрав!
    Када кажете да се Греп користи и за тражење датотека, мислим да то није тачно, јер ако покренете греп ЕКСПРЕССИОН и не пренесете му датотеку, сачекаће унос података са стандардног улаза.
    Према страници са упутствима:
    греп претражује именоване улазне ДАТОТЕКЕ за редове који садрже подударање са датим УЗОРКОМ. Ако није наведена ниједна датотека или ако је дата датотека „-“, греп претражује стандардни унос.
    Дакле, можете га користити у цевоводима, попут оног који рашчлањује излаз / проц / цпуинфо прослеђујући излаз ове наредбе као улаз у греп да бисте могли да претражите.
    поздрави

  2.   ана дијо

    Врло добар пост.
    То врло добро објашњавате и прелазите право на ствар.