grep

Afișați liniile înainte și după meci prin Grep

Afișați liniile înainte și după meci prin Grep

Grep a fost utilizat pe scară largă în sistemele Linux când lucrați la unele fișiere, căutați un anumit model și multe altele. De data aceasta, folosim comanda grep pentru a afișa liniile înainte și după cuvântul cheie potrivite utilizate într-un anumit fișier. În acest scop, vom folosi steagurile „-A”, „-B” și „-C” în ghidul nostru tutorial. Deci, trebuie să efectuați fiecare pas pentru o mai bună înțelegere. Asigurați-vă că aveți Ubuntu 20.04 Sistem Linux instalat.

În primul rând, trebuie să vă deschideți terminalul de linie de comandă Linux pentru a începe să lucrați la grep. În prezent vă aflați în directorul Acasă al sistemului Ubuntu imediat după ce terminalul din linia de comandă a fost deschis. Deci, încercați să enumerați toate fișierele și folderele din directorul principal al sistemului Linux folosind comanda ls de mai jos și veți obține toate. Puteți vedea, avem câteva fișiere text și câteva foldere listate în el.

eu sunt

Exemplul 01: Utilizarea „-A” și „-B”

Din fișierele text afișate mai sus, vom analiza unele dintre acestea și vom încerca să aplicăm comanda grep pe ele. Să deschidem fișierul text „one.txt ”folosind mai întâi comanda populară„ pisică ”ca mai jos:

$ cat unul.txt

Mai întâi vom vedea câteva potriviri de cuvinte specifice în acest fișier text folosind comanda grep ca mai jos. Căutăm cuvântul „noi” în fișierul text „unul”.txt ”folosind instrucțiuni grep. Ieșirea arată două linii din fișierul text cu „noi” în ele.

$ grep noi unul.txt

Deci, în acest exemplu, vom afișa liniile înainte și după potrivirea specifică a cuvântului în unele fișiere text. Deci, folosind același fișier text „one.txt ”am coincis cu cuvântul„ noi ”în timp ce afișăm cele 3 linii dinaintea acestuia ca mai jos. Steagul „-B” înseamnă „Înainte”. Ieșirea arată doar 2 linii înainte de linia specifică a cuvântului, deoarece fișierul nu are mai multe linii înainte de linia unui anumit cuvânt. Arată, de asemenea, acele rânduri care au acel cuvânt specific prezent în ele.

$ grep -B 3 noi unul.txt

Să folosim același cuvânt cheie „noi” din acest fișier pentru a afișa cele 3 linii după linia care are cuvântul „noi”. Steagul „-A” prezintă „După”. Ieșirea arată din nou doar 2 linii, deoarece nu are mai multe linii în fișier.

$ grep -A 3 we one.txt

Deci, haideți să folosim un nou cuvânt cheie pentru a fi asortat și să afișăm liniile sau rândurile înainte și după linia în care se află. Așa că am folosit cuvântul „se poate” pentru a se potrivi. Numerele de linie sunt aceleași în acest caz. Cele 3 linii după cuvântul „pot” potrivite au fost afișate mai jos folosind comanda grep.

$ grep -A 3 can one.txt

Puteți vedea afișările de ieșire înainte de rândurile unui cuvânt asociat folosind cuvântul cheie „poate”. În schimb, arată doar două linii înainte de linia cuvântului potrivit, deoarece nu mai există linii înaintea acestuia.

$ grep -B 3 poate unul.txt

Exemplul 02: Utilizarea „-A” și „-B”

Să luăm un alt fișier text, „doi.txt, ”din directorul de start și afișați conținutul acestuia folosind comanda„ pisică ”de mai jos.

$ pisica doi.txt

Să afișăm 5 rânduri înainte de cuvântul „Cele mai multe” din fișierul „doi.txt ”folosind comanda grep. Ieșirea arată 5 linii înainte ca linia să conțină un cuvânt specific.

$ grep -B 5 Majoritatea doi.txt

Comanda grep to afișează cele 5 linii după cuvântul „Cele mai multe” din fișierul text „doi.txt ”a fost dat mai jos.

$ grep -A 5 Cele mai multe două.txt

Să schimbăm cuvântul cheie care trebuie căutat. Vom folosi „de” ca un cuvânt cheie care trebuie asociat de data aceasta. Afișați cele 2 linii dinaintea cuvântului „de” din fișierul text „doi.txt ”se poate face folosind comanda grep de mai jos. Ieșirea arată două rânduri pentru cuvântul cheie „de”, deoarece apare de două ori în fișier. Astfel, ieșirea conține mai mult de 2 linii.

$ grep -B 2 din doi.txt

Acum se afișează cele 2 linii ale fișierului „doi.txt ”după linia care conține cuvântul cheie„ de ”se poate face folosind comanda de mai jos. Ieșirea afișează din nou mai mult de 2 linii.

$ grep -A 2 din doi.txt

Exemplul 03: Utilizarea „-C”

Un alt steag, „-C” a fost folosit pentru a afișa liniile înainte și după cuvântul potrivit. Să afișăm conținutul fișierului „one.txt ”folosind comanda cat.

$ cat unul.txt

Alegem „societate” ca cuvânt cheie care trebuie asociat. Comanda grep de mai jos va afișa cele 2 linii înainte și 2 linii după linia care conține cuvântul „societate” în ea. Ieșirea arată o linie înaintea cuvântului specific și 2 rânduri după acesta.

$ grep -C 2 society one.txt

Să vedem conținutul fișierului „doi.txt ”folosind comanda cat de mai jos.

$ pisica doi.txt

În această ilustrație, folosim „poezii” ca cuvânt cheie pentru a se potrivi. Deci, executați comanda de mai jos pentru aceasta. Ieșirea arată două linii înainte și două linii după cuvântul potrivit.

$ grep -C 2 poezii două.txt

Să folosim încă un cuvânt cheie din fișierul „doi.txt ”să se potrivească. De această dată consumăm „natură” ca cuvânt cheie. Deci, încercați comanda de mai jos în timp ce utilizați „-C” ca semnalizator cu cuvântul cheie „natură” din fișierul „doi.txt". De data aceasta, ieșirea are mai mult de două linii în ieșire. Deoarece fișierul conține cuvântul „natură” de mai multe ori, acesta este motivul din spatele acestuia. Cuvântul cheie „natură”, care este primul, are două rânduri înainte și două rânduri după el. În timp ce al doilea se potrivește cu același cuvânt cheie, „natura” are două rânduri înainte, dar nu există linii după acesta, deoarece se află la ultima linie a fișierului.

$ grep -C 2 poezii două.txt

Concluzie

Am reușit să afișăm liniile înainte și după cuvântul specific în timp ce folosim instrucțiunea grep.

Top 5 cărți de captură a jocului
Cu toții am văzut și ne-au plăcut jocurile de streaming pe YouTube. PewDiePie, Jakesepticye și Markiplier sunt doar câțiva dintre cei mai buni jucător...
Cum să dezvolți un joc pe Linux
Acum un deceniu, nu mulți utilizatori de Linux ar fi prezis că sistemul lor de operare preferat va fi într-o zi o platformă populară de jocuri pentru ...
Open Source Ports of Commercial Game Engines
Free, open source and cross-platform game engine recreations can be used to play old as well as some of the fairly recent game titles. This article wi...