Водич за почетнике

Како пронаћи стринг у датотеци на Линук-у

Како пронаћи стринг у датотеци на Линук-у

Понекад ће вам можда требати да претражите одређену реч или низ унутар датотеке. Да бисте то урадили, скоро сваки уређивач текста има неку ГУИ имплементацију која ће вам помоћи. Али за кориснике Линука је много продуктивније и прикладније обављати ове претраге из командне линије.

У ствари, Линук има моћан и прикладан услужни програм за командну линију - греп наредбу за ову сврху. Користећи ово, можете претраживати одређени низ не само у једној датотеци већ и у више датотека за свеобухватнију претрагу.

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

Белешка: За ово упутство смо креирали две демо текстуалне датотеке - демофиле.ткт и демофиле02.ткт. Користићемо греп наредбу за проналажење низова у овим датотекама. Ево прегледа садржаја ове две датотеке како бисте знали како команде раде.

Садржај демо датотеке.ткт:

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

Садржај демофиле02.ткт:

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

Проналажење низова у датотеци путем командне линије (ГРЕП метода)

ГРЕП је скраћеница од Глобал Регулар Екпрессион Принт. То је „Глобално“, јер може претраживати читав ваш Линук систем. „Регуларни израз“ је оно што називамо шаблоном за претрагу текста који ћемо користити са наредбом. А „Штампање“ значи да ће исписати резултате претраге чим пронађе подударање на основу датог регуларног израза.

Сад кад имате идеју о томе шта је греп наредба, да видимо како је можемо користити. Ево синтаксе за употребу греп наредбе за проналажење низа у датотеци:

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

Мораћете да замените израз „стринг“ „регуларним изразом“ који желите да користите, а „име датотеке“ именом датотеке у којој желите да тражите стринг.

# 1. Коришћење ГРЕП-а за проналажење низа у једној датотеци

Дакле, рецимо ако желите да тражите реч „демонстрација“ у датотеци „демофиле“.ткт, “мораћете да користите ову наредбу:

$ греп демонстрацијски демофиле.ткт

Што даје излаз:

Коришћење ГРЕП-а за проналажење низа у једној датотеци

Као што видите, команда преузима целу линију која садржи обезбеђени низ. Ако се наведени низ појављује у више редова, исписаће их све. Да видимо да ли ради тако што ћемо потражити низ „Тхис“ у „демофилеу.ткт ”.

$ греп Овај демофиле.ткт

А излаз је:

греп разликује велика и мала слова

Обратите пажњу на то како сте прво користили низ „ово“, а он није ништа одштампао. Тек када унесете „Ово“, добијате подударање. Као такви, требали бисте запамтити да греп наредба разликује велика и мала слова.

Да бисте игнорисали случај, уместо тога мораћете да унесете ову команду:

$ греп -и овај демо фајл.ткт

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

Као што сада можете видети, иако је понуђени низ „ово“, команда се подудара са „Ово“ и исписује тај одговор.

# 2. Коришћење ГРЕП-а за проналажење истог низа у више датотека

Да бисте претраживали понуђени низ у више датотека, све што требате је додати команду са свим именима датотека.

Ево примера. Овде тражимо низ „речи“ у датотекама „демофиле.ткт “и„ демофиле02.ткт ”:

$ греп вордс демофиле.ткт демофиле02.ткт

А излаз је:

Коришћење ГРЕП-а за проналажење истог низа у више датотека

Као што видите, наредба греп не само да ће вам показати одговарајући резултат, већ и на прикладан начин означити из које је датотеке.

# 3. Коришћење ГРЕП-а за проналажење вишеструких низова у више датотека

Греп такође можете користити за проналажење више низова у једној или више датотека. Ово је синтакса коју ћете морати да користите:

$ греп -Е 'паттерн1 | паттерн2 | паттерн3 |…' име датотеке1 име датотеке2 име датотеке3 .. 

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

Сада искористимо оно што смо научили за тражење низова „датотека“ и „речи“ у две датотеке: „демофиле.ткт “и„ демофиле02.ткт ”:

$ греп -Е 'датотека | реч' демофиле.ткт демофиле02.ткт

А излаз је:

Коришћење ГРЕП-а за проналажење вишеструких низова у више датотека

# 4. Савети и трикови за коришћење ГРЕП наредбе за проналажење низова

Упркос својој укупној једноставности, греп команда је изузетно моћна. Ево неколико начина на које можете користити греп наредбу за напредна претраживања низова.

На пример, да ли сте знали да греп наредбу можете користити са џокер знаковима? Размотримо ову наредбу:

$ греп ворд демо датотека *

Што даје излаз:

греп и џокер знакови

Као што видите, команда је тражила и сада приказује резултате за обе датотеке „демофиле.ткт “и„ демофиле02.ткт ”. То је зато што смо користили џокер звездицу (*) који се користи да представља једну или више појава било ког знака.

За више информација у вези са различитим врстама џокер знакова и како их користити, можете погледати ово читање: Замењиви знакови у Линуку објашњени са 10 примера.

Крећући даље, греп наредба такође подржава мноштво опција наредби. До сада смо већ видели две од њих:

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

Све о чему смо до сада разговарали требало би да вам помогне у претраживању низова у датотекама. Међутим, ако желите да савладате ГРЕП наредбу, препоручујемо вам да погледате ова два чланка:

Проналажење низова у датотеци путем командне линије (Коришћење уређивача текста из командне линије)

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

У ствари, већина уређивача текста у командној линији већ долази са уграђеном функционалношћу претраживања.

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

Како пронаћи текстуални низ у нано-у?

Рецимо да сте датотеку отворили у нано уређивачу текста. У том случају, све што треба да урадите је да притиснете Цтрл + В и наћи ћете нови упит за унос низа.

Када завршите, притисните Ентер и курсор ће се наћи на првом знаку првог појављивања претраживаног низа. Можете да наставите да притискате Ентер да бисте прешли на друге инстанце низа, ако их има.

Како пронаћи текстуални низ у нано-у

Како пронаћи текстуални низ у вим-у?

Ако користите вим уређивач текста, можете да унесете: / након чега следи низ који желите да претражите, а затим притисните Ентер. Слично као и раније, поставиће курсор на прву појаву претраживаног низа. И овде можете да притиснете тастер Ентер да бисте прешли на друге инстанце низа.

Како пронаћи текстуални низ у вим-у

Проналажење низова у датотеци путем командне линије (ГУИ метода)

Постоји чак и ГУИ метода за проналажење низова у датотеци. У суштини, слична је функцији „пронађи и замени“ коју видите у програму Мицрософт Ворд; међутим, она ће се разликовати у зависности од тога који ГУИ едитор текста користите.

Сада, као што знате, постоје стотине уређивача текста и овде није практично покривати све. Међутим, сви они функционишу слично, тако да нећете имати проблема у раду са другима кад сазнате како један од њих ради.

За ово упутство користићемо подразумевани уређивач текста који долази са Убунтуом, назван - „Уређивач текста.”

Како пронаћи низ помоћу ГУИ уређивача текста

Као што видите са слике, отворили смо демо датотеку.ткт на уређивачу. Сада кликнемо на падајући мени који открива опције за „Пронађи“ и „Пронађи и замени“, помоћу којих можемо пронаћи било који низ у отвореној датотеци.

Окончање

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

Ако имате питања, оставите нам коментар и ми ћемо вам сигурно помоћи у вашим питањима.

Ако започињете са Линуком, не заборавите да погледате нашу серију Леарн Линук. Испуњен је мноштвом сјајних водича, упутстава и водича, дизајнираних за почетнике и искусније кориснике који ће вам помоћи да постанете прави Линук моцни корисник.

Најбољи емулатори играће конзоле за Линук
Овај чланак ће навести популарни софтвер за емулацију играће конзоле доступан за Линук. Емулација је слој компатибилности софтвера који опонаша хардве...
Најбољи Линук Дистрос за игре у 2021
Линук оперативни систем далеко је превалио свој изворни, једноставни изглед заснован на серверима. Овај ОС се изузетно побољшао последњих година и сад...
Како снимити и стримовати своју играћу сесију на Линук-у
У прошлости се играње игара сматрало само хобијем, али с временом је играчка индустрија забележила огроман раст у погледу технологије и броја играча. ...