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.