grep

Zobraziť riadky pred a po zápase cez Grep

Zobraziť riadky pred a po zápase cez Grep

Grep bol široko používaný v systémoch Linux pri práci na niektorých súboroch, hľadaní konkrétneho vzoru a mnohých ďalších. Tentokrát používame príkaz grep na zobrazenie riadkov pred a za zhodným kľúčovým slovom použitým v niektorom konkrétnom súbore. Na tento účel budeme v našom výučbovom sprievodcovi používať príznaky „-A“, „-B“ a „-C“. Musíte teda vykonať každý krok, aby ste lepšie porozumeli. Uistite sa, že máte Ubuntu 20.04 Je nainštalovaný systém Linux.

Najskôr musíte otvoriť terminál príkazového riadku systému Linux, aby ste mohli začať pracovať na grepe. Momentálne sa nachádzate v domovskom adresári vášho systému Ubuntu hneď po otvorení terminálu príkazového riadku. Skúste teda pomocou príkazu ls uviesť zoznam všetkých súborov a priečinkov v domovskom adresári vášho systému Linux a získate všetky. Ako vidíte, máme v ňom uvedené niektoré textové súbory a priečinky.

je

Príklad 01: Použitie znakov „-A“ a „-B“

Z vyššie zobrazených textových súborov sa pozrieme na niektoré z nich a pokúsime sa na ne použiť príkaz grep. Poďme otvoriť textový súbor „jeden.txt “najskôr pomocou populárneho príkazu„ cat “:

$ mačka jedna.TXT

Najprv v tomto textovom súbore uvidíme zhody niektorých konkrétnych slov pomocou príkazu grep, ako je uvedené nižšie. Hľadáme slovo „my“ v textovom súbore „one“.txt “pomocou inštrukcie grep. Výstup zobrazuje dva riadky textového súboru, v ktorých je „my“.

$ grep sme jeden.TXT

V tomto príklade teda v niektorých textových súboroch ukážeme riadky pred a po konkrétnej slovnej zhode. Takže použitie rovnakého textového súboru „jeden.txt ”porovnávame slovo„ my “so zobrazením 3 riadkov pred ním, ako je uvedené nižšie. Vlajka „-B“ znamená „pred“. Výstup zobrazuje iba 2 riadky pred konkrétnym slovným riadkom, pretože súbor nemá viac riadkov pred riadkom konkrétneho slova. Ukazuje tiež tie riadky, v ktorých je dané konkrétne slovo.

$ grep -B 3 sme jeden.TXT

Použime rovnaké kľúčové slovo „my“ z tohto súboru, aby sme zobrazili 3 riadky za riadkom, ktoré majú slovo „my“. Vlajka „-A“ predstavuje „Po“. Výstup zobrazuje znova iba 2 riadky, pretože v súbore nemá viac riadkov.

$ grep -A 3 sme jeden.TXT

Použijme teda nové kľúčové slovo na priradenie a zobrazme riadky alebo riadky pred a za riadkom, v ktorom leží. Takže používame slovo „môže“, aby sa zhodovalo. Čísla riadkov sú v tomto prípade rovnaké. 3 riadky za zhodným slovom „môže“ sa zobrazili nižšie pomocou príkazu grep.

$ grep -A 3 môže jeden.TXT

Výstupné relácie môžete vidieť pred riadkami zhody slova pomocou kľúčového slova „môže“. Naproti tomu zobrazuje iba dva riadky pred riadkom zhodného slova, pretože pred ním už nie sú žiadne ďalšie riadky.

$ grep -B 3 môže jeden.TXT

Príklad 02: Použitie znakov „-A“ a „-B“

Zoberme si ďalší textový súbor, „dva.txt “z domovského adresára a jeho obsah zobrazíte pomocou príkazu„ cat “uvedeného nižšie.

$ mačka dva.TXT

Poďme zobraziť 5 riadkov pred slovo „Most“ zo súboru „dva.txt “pomocou príkazu grep. Výstup zobrazuje 5 riadkov pred tým, ako riadok obsahuje konkrétne slovo.

$ grep -B 5 Väčšina dvoch.TXT

Príkaz grep na zobrazí 5 riadkov za slovom „Most“ z textového súboru „dva.txt “je uvedené nižšie.

$ grep -A 5 Väčšina dvoch.TXT

Zmeňme kľúčové slovo, ktoré sa má vyhľadávať. Ako kľúčové slovo, ktoré sa bude tentokrát zhodovať, použijeme „of“. Zobraziť 2 riadky pred slovom „of“ z textového súboru „dva.txt ”je možné vykonať pomocou nižšie uvedeného príkazu grep. Výstup zobrazuje dva riadky pre kľúčové slovo „of“, pretože je v súbore dvakrát. Výstup teda obsahuje viac ako 2 riadky.

$ grep -B 2 z dvoch.TXT

Teraz sa zobrazujú 2 riadky súboru „dva.txt “za riadkom, ktorý obsahuje kľúčové slovo„ of “, je možné vykonať pomocou nižšie uvedeného príkazu. Výstup opäť zobrazí viac ako 2 riadky.

$ grep -A 2 z dvoch.TXT

Príklad 03: Použitie znaku „-C“

Na označenie riadkov pred a za zhodným slovom sa použil ďalší príznak „-C“. Poďme zobraziť obsah súboru „jeden.txt “pomocou príkazu cat.

$ mačka jedna.TXT

Ako kľúčové slovo, ktoré je potrebné zhodovať, sme vybrali „spoločnosť“. Nasledujúci príkaz grep zobrazí 2 riadky pred a 2 riadky za riadkom, ktorý obsahuje slovo „spoločnosť“. Výstup zobrazuje jeden riadok pred konkrétnym slovným riadkom a 2 riadky za ním.

$ grep -C 2 spoločnosť jedna.TXT

Pozrime sa na obsah súboru „dva.txt “pomocou nižšie uvedeného príkazu mačka.

$ mačka dva.TXT

Na tejto ilustrácii používame ako slovo kľúčové slovo „básne“. Vykonajte teda nasledujúci príkaz. Výstup zobrazuje dva riadky pred a dva riadky za zhodným slovom.

$ grep -C 2 básne dva.TXT

Použime ešte jedno kľúčové slovo zo súboru „dva.txt “, ktoré sa majú zhodovať. Tentokrát konzumujeme „prírodu“ ako kľúčové slovo. Takže vyskúšajte nasledujúci príkaz, zatiaľ čo ako príznak s príponou „-C“ používate kľúčové slovo „nature“ zo súboru „two“.TXT". Tentokrát má výstup na výstupe viac ako dva riadky. Pretože súbor obsahuje slovo „príroda“ viackrát, je to z toho dôvodu. Kľúčové slovo „príroda“, ktoré je na prvom mieste, má dva riadky pred a dva riadky po ňom. Zatiaľ čo druhé sa zhoduje s rovnakým kľúčovým slovom, výraz „nature“ má pred sebou dva riadky, ale nie sú za ním žiadne riadky, pretože sa nachádzajú v poslednom riadku súboru.

$ grep -C 2 básne dva.TXT

Záver

Úspešne sme zobrazovali riadky pred a za konkrétnym slovom pomocou inštrukcie grep.

Hry Najlepšie hry na hranie s ručným sledovaním
Najlepšie hry na hranie s ručným sledovaním
Oculus Quest nedávno predstavil skvelú myšlienku ručného sledovania bez ovládačov. Vďaka stále sa zvyšujúcemu počtu hier a aktivít, ktoré vykonávajú p...
Hry Ako zobraziť prekrytie OSD v linuxových aplikáciách a hrách na celú obrazovku
Ako zobraziť prekrytie OSD v linuxových aplikáciách a hrách na celú obrazovku
Hranie hier na celú obrazovku alebo používanie aplikácií v režime rozptýlenia zadarmo na celú obrazovku vás môže odrezať od relevantných systémových i...
Hry Top 5 kariet na zachytávanie hier
Top 5 kariet na zachytávanie hier
Všetci sme videli a milovali streamovanie hier na YouTube. PewDiePie, Jakesepticye a Markiplier sú iba niektorí z najlepších hráčov, ktorí zarobili mi...