grep

Prikaži linije prije i poslije meča putem Grepa

Prikaži linije prije i poslije meča putem Grepa

Grep se široko koristi u Linux sustavima kada radi na nekim datotekama, traži neki određeni obrazac i još mnogo toga. Ovoga puta koristimo naredbu grep za prikaz redaka prije i nakon podudarne ključne riječi koja se koristi u nekoj određenoj datoteci. U tu svrhu koristit ćemo oznaku "-A", "-B" i, -C "u cijelom našem vodiču s uputama. Dakle, svaki korak morate izvesti radi boljeg razumijevanja. Provjerite imate li Ubuntu 20.04 Instaliran Linux sustav.

Prvo, morate otvoriti svoj Linux terminal naredbenog retka da biste počeli raditi na grep-u. Trenutno ste u početnom direktoriju vašeg Ubuntu sustava odmah nakon otvaranja terminala naredbenog retka. Dakle, pokušajte navesti sve datoteke i mape u početnom direktoriju vašeg Linux sustava koristeći donju naredbu ls i dobit ćete sve. Vidite, u njemu su navedene neke tekstualne datoteke i neke mape.

ls

Primjer 01: Korištenje '-A' i '-B'

Iz gore prikazanih tekstualnih datoteka, pregledat ćemo neke od njih i pokušati primijeniti grep naredbu na njih. Otvorimo tekstualnu datoteku „jedan.txt "prvo koristeći popularnu naredbu" mačka "ispod:

$ mačka jedan.txt

Prvo ćemo vidjeti podudaranje određenih riječi u ovoj tekstualnoj datoteci pomoću naredbe grep kao u nastavku. Riječ „mi“ tražimo u tekstualnoj datoteci „jedan“.txt ”koristeći grep upute. Izlaz prikazuje dva retka iz tekstualne datoteke u kojima je "mi".

$ grep mi jedan.txt

Dakle, u ovom ćemo primjeru prikazati retke prije i nakon podudaranja određene riječi u nekim tekstualnim datotekama. Dakle, koristeći istu tekstualnu datoteku „jedan.txt "podudarali smo se s riječju" mi "dok smo prikazivali 3 retka prije nje, kao u nastavku. Zastava "-B" znači "Prije". Izlaz prikazuje samo 2 retka prije određenog retka riječi jer datoteka nema više redaka prije retka određene riječi. Također prikazuje one retke u kojima je prisutna ta određena riječ.

$ grep -B 3 mi jedan.txt

Upotrijebimo istu ključnu riječ "mi" iz ove datoteke za prikaz 3 retka nakon retka koji imaju riječ "mi". Zastava "-A" predstavlja "Poslije". Izlaz ponovno prikazuje samo 2 retka jer nema više redaka u datoteci.

$ grep -A 3 mi jedan.txt

Dakle, upotrijebimo novu ključnu riječ koja se podudara i prikažemo retke ili retke prije i poslije retka u kojem se nalazi. Dakle, koristili smo riječ "mogu" za podudaranje. Brojevi linija u ovom su slučaju jednaki. 3 retka nakon podudarne riječi "može" prikazana su u nastavku pomoću grep naredbe.

$ grep -A 3 mogu jedan.txt

Rezultate možete vidjeti prije redaka odgovarajuće riječi pomoću ključne riječi "mogu". Suprotno tome, prikazuje samo dva retka prije retka podudarne riječi jer prije njega nema više redaka.

$ grep -B 3 može jedan.txt

Primjer 02: Korištenje '-A' i '-B'

Uzmimo drugu tekstualnu datoteku, „dvije.txt, "iz početnog direktorija i prikažite njegov sadržaj pomoću donje naredbe" mačka ".

$ mačka dva.txt

Prikažimo 5 redaka ispred riječi „Most“ iz datoteke „two“.txt ”pomoću naredbe grep. Izlaz prikazuje 5 redaka prije nego što redak sadrži određenu riječ.

$ grep -B 5 Najviše dvoje.txt

Naredba grep za prikazuje 5 redaka nakon riječi "Most" iz tekstualne datoteke "two".txt ”dat je u nastavku.

$ grep -A 5 Najviše dvoje.txt

Promijenimo ključnu riječ koju ćemo pretraživati. Ovaj ćemo put upotrijebiti "od" kao ključnu riječ. Prikažite dva retka ispred riječi „od“ iz tekstualne datoteke „dva“.txt "može se izvršiti pomoću naredbe grep u nastavku. Izlaz prikazuje dva retka za ključnu riječ "od", jer dolazi dva puta u datoteku. Stoga izlaz sadrži više od 2 retka.

$ grep -B 2 od dva.txt

Sada se prikazuju 2 retka datoteke „dva.txt "nakon retka koji sadrži ključnu riječ" od "može se izvršiti pomoću naredbe u nastavku. Izlaz ponovno prikazuje više od 2 retka.

$ grep -Dva od dva.txt

Primjer 03: Korištenje '-C'

Još jedna zastava, "-C", korištena je za prikaz redaka prije i nakon odgovarajuće riječi. Prikažimo sadržaj datoteke „jedan.txt ”pomoću naredbe cat.

$ mačka jedan.txt

Odabrali smo „društvo“ kao ključnu riječ koja se podudara. Naredna grep naredba prikazat će 2 retka prije i 2 retka nakon retka koji u sebi sadrži riječ "društvo". Izlaz prikazuje jedan redak ispred određenog retka riječi i 2 retka nakon njega.

$ grep -C 2 društvo jedno.txt

Pogledajmo sadržaj datoteke „dva.txt ”koristeći donju naredbu mačka.

$ mačka dva.txt

Na ovoj ilustraciji koristimo „pjesme“ kao ključnu riječ koja se podudara. Dakle, izvršite donju naredbu za ovo. Izlaz prikazuje dva retka prije i dva retka nakon odgovarajuće riječi.

$ grep -C 2 pjesme dvije.txt

Upotrijebimo još jednu ključnu riječ iz datoteke „dva.txt ”koji se podudara. Ovaj put konzumiramo "prirodu" kao ključnu riječ. Dakle, isprobajte naredbu u nastavku dok koristite "-C" kao zastavicu koja ima ključnu riječ "priroda" iz datoteke "dva.txt ". Ovaj put, izlaz ima više od dva retka u izlazu. Budući da datoteka više puta sadrži riječ "priroda", to je razlog koji stoji iza nje. Ključna riječ "priroda", koja je prva, ima dva retka prije i dva retka iza sebe. Dok se druga podudarala s istom ključnom riječi, "priroda" ima dva retka ispred sebe, ali nema redaka nakon nje, jer je u zadnjem retku datoteke.

$ grep -C 2 pjesme dvije.txt

Zaključak

Uspješno prikazujemo retke prije i poslije određene riječi dok koristimo grep upute.

HD Remastered igre za Linux koje ranije nisu imale Linux izdanje
Mnogi programeri i izdavači igara dolaze s HD remasterom starih igara kako bi produžili životni vijek franšize, molimo obožavatelje da zatraže kompati...
Kako koristiti AutoKey za automatizaciju Linux igara
AutoKey je uslužni program za automatizaciju radne površine za Linux i X11, programiran na Python 3, GTK i Qt. Koristeći njegovu skriptiranje i MACRO ...
Kako prikazati brojač FPS-a u Linux igrama
Linux gaming dobio je velik poticaj kada je Valve najavio Linux podršku za Steam klijent i njihove igre 2012. godine. Od tada su mnoge AAA i indie igr...