Kuva read enne ja pärast mängu Grepi kaudu

Show Lines Before After Match Via Grep



Grepi on laialdaselt kasutatud Linuxi süsteemides, kui ta töötab mõne faili kallal, otsib mingit kindlat mustrit ja palju muud. Seekord kasutame käsku grep, et kuvada ridad enne ja pärast vastavat märksõna, mida kasutatakse mõnes konkreetses failis. Sel eesmärgil kasutame oma õpetuste juhendis lippu -A, -B ja, -C. Niisiis, parema mõistmise jaoks peate iga sammu tegema. Veenduge, et teil on installitud Ubuntu 20.04 Linuxi süsteem.

Esiteks peate grepiga töötamise alustamiseks avama oma Linuxi käsureaterminali. Olete praegu oma Ubuntu süsteemi kodukataloogis kohe pärast käsureaterminali avamist. Niisiis, proovige loetleda kõik Linuxi kodukataloogi failid ja kaustad, kasutades allolevat käsku ls, ja saate kõik. Näete, et meil on loetletud mõned tekstifailid ja mõned kaustad.







ls



Näide 01: '-A' ja '-B' kasutamine

Ülaltoodud tekstifailidest vaatame mõnda neist ja proovime neile käsku grep rakendada. Avame kõigepealt tekstifaili one.txt, kasutades alltoodud populaarset kassi käsku:



$kassüks.txt





Esmalt näeme selles tekstifailis mõningaid konkreetseid sõnu, kasutades käsku grep, nagu allpool. Otsime sõna me tekstifailist one.txt, kasutades grep juhiseid. Väljund näitab kahte rida tekstifailist, milles me oleme.

$haaretme one.txt



Niisiis, selles näites näitame mõnedes tekstifailides konkreetse sõna vaste eel ja järel olevaid ridu. Nii et kasutades sama tekstifaili one.txt, oleme sobitanud sõna me, näidates selle ees 3 rida, nagu allpool. Lipp -B tähistab enne. Väljund näitab ainult 2 rida enne konkreetset sõna rida, kuna failil ei ole rohkem ridu enne konkreetse sõna rida. See näitab ka neid ridu, millel on see konkreetne sõna.

$haaret–B3me one.txt

Kasutame sama märksõna, mida kasutame sellest failist, et kuvada 3 rida rea ​​järel, millel on sõna me. Lipp -A esitab pärast. Väljund näitab jälle ainult 2 rida, kuna sellel pole failis rohkem ridu.

$haaret-TO3me one.txt

Niisiis, kasutame sobitamiseks uut märksõna ja kuvame read või read enne ja pärast seda, kus see asub. Nii et oleme kasutanud sobitamise sõna. Reanumbrid on sel juhul samad. 3 rida pärast sobitatud sõna võidakse kuvada allpool käsu grep abil.

$haaret-TO3saab one.txt

Näete väljundit enne vastava sõna ridu, kasutades märksõna. Seevastu näitab see ainult kahte rida enne sobitatud sõna rida, kuna selle ees pole enam ridu.

$haaret–B3saab one.txt

Näide 02: '-A' ja '-B' kasutamine

Võtame kodukataloogist teise tekstifaili two.txt ja kuvame selle sisu, kasutades alltoodud käsku cat.

$kasstwo.txt

Kuvame viis rida sõna Most ees failist two.txt, kasutades käsku grep. Väljund näitab 5 rida, enne kui rida sisaldab konkreetset sõna.

$haaret–B5Enamik two.txt

Käsk grep näitab viit rida sõna Most järel tekstifailist two.txt.

$haaret-TO5Enamik two.txt

Muudame otsitava märksõna. Seekord kasutame märksõnana vastet. Kuvage kaks rida enne sõna tekstifailist two.txt, kasutades allolevat käsku grep. Väljund näitab märksõna jaoks kahte rida, kuna see on failis kaks korda. Seega sisaldab väljund rohkem kui 2 rida.

$haaret–B2kahest. txt

Nüüd saab faili two.txt 2 rida kuvada pärast märksõna sisaldavat rida, kasutades alltoodud käsku. Väljund kuvab jälle rohkem kui 2 rida.

$haaret-TO2kahest. txt

Näide 03: „-C” kasutamine

Teist lippu -C on kasutatud ridade kuvamiseks enne ja pärast sobitatud sõna. Kuvame faili one.txt sisu, kasutades käsku cat.

$kassüks.txt

Ühiskonna valime vastendatavaks märksõnaks. Allolev käsk grep kuvab 2 rida enne ja 2 rida pärast rida, mis sisaldab sõna ühiskond. Väljund näitab ühte rida enne konkreetset sõnarida ja 2 rida pärast seda.

$haaret–C2ühiskond one.txt

Vaatame faili two.txt sisu, kasutades allolevat käsku cat.

$kasstwo.txt

Sellel illustratsioonil kasutame sobitamiseks märksõnana luuletusi. Niisiis, täitke selle jaoks järgmine käsk. Väljundis kuvatakse kaks rida enne sobitatud sõna ja kaks rida pärast seda.

$haaret–C2luuletused kaks.txt

Kasutage sobitamiseks veel ühte märksõna failist two.txt. Tarbime seekord märksõnana loodust. Niisiis, proovige allolevat käsku, kui kasutate lippu -C, millel on märksõna olemus failist two.txt. Seekord on väljundis väljundis rohkem kui kaks rida. Kuna fail sisaldab sõna loodus rohkem kui üks kord, on see selle põhjus. Märksõnal loodus, mis on esikohal, on kaks rida enne ja kaks rida pärast seda. Kui teine ​​sobis sama märksõnaga, siis looduse ees on kaks rida, kuid pärast seda pole ridu, kuna see asub faili viimasel real.

$haaret–C2luuletused kaks.txt

Järeldus

Oleme edukalt näidanud ridasid enne ja pärast konkreetset sõna, kasutades samal ajal juhiseid grep.