príkaz grep v systéme Unix/Linux

príkaz grep v systéme Unix/Linux

The grep> príkaz v Unix/Linux je výkonný nástroj používaný na vyhľadávanie a manipuláciu s textovými vzormi v súboroch. Jeho názov je odvodený od ed (editorského) príkazu g/re/p (globálne vyhľadať regulárny výraz a vytlačiť zhodné riadky), čo odráža jeho základnú funkčnosť. grep> je široko používaný programátormi, systémovými administrátormi a používateľmi pre jeho efektívnosť a všestrannosť pri práci s textovými údajmi. V tomto článku preskúmame rôzne aspekty grep> príkaz.

Obsah

Syntax príkazu grep v systéme Unix/Linux

Základná syntax ` grep`> príkaz je nasledovný:



  grep [options] pattern [files] 

Tu,

[> options> ]> : Toto sú príznaky príkazového riadku, ktoré upravujú správanie grep> .

[> pattern> ]> : Toto je regulárny výraz, ktorý chcete vyhľadať.

[> file> ]> : Toto je názov súboru (súborov), v ktorých chcete hľadať. Môžete zadať viacero súborov na súčasné vyhľadávanie.

Možnosti dostupné v príkaze grep

možnosti

Popis

-c

Týmto sa vytlačí iba počet riadkov, ktoré zodpovedajú vzoru

-h

Zobrazte zhodné riadky, ale nezobrazte názvy súborov.

i

Ignoruje, prípad zhody

-l

Zobrazí iba zoznam názvov súborov.

-n

Zobrazte zhodné riadky a ich čísla riadkov.

-v

Tým sa vytlačia všetky čiary, ktoré sa nezhodujú so vzorom

-e exp

Určuje výraz s touto voľbou. Možno použiť viackrát.

-f súbor

Preberá vzory zo súboru, jeden na riadok.

-A

Považuje vzor za rozšírený regulárny výraz (ERE)

-In

Zhoda celého slova

-O

Vytlačte len zhodné časti zodpovedajúceho riadku, pričom každá takáto časť je na samostatnom výstupnom riadku.

-A n

Po výsledku vytlačí hľadaný riadok a nriadky.

-B n

Vytlačí hľadaný riadok a n riadok pred výsledkom.

-C n

Vytlačí hľadaný riadok a n riadkov pred výsledkom.

Vzorové príkazy

Zvážte nižšie uvedený súbor ako vstup.

cat>geekfile.txt 

unix je skvelý operačný systém. unix bol vyvinutý v Bellových laboratóriách.

naučiť sa operačný systém.

Unix linux, ktorý si vyberiete.

uNix je ľahké sa naučiť.unix je viacpoužívateľský operačný systém.Learn unix .unix je výkonný.

Praktický príklad príkazu grep v Linuxe

Voľba -i umožňuje v danom súbore necitlivo vyhľadať veľkosť písmen. Zhoduje sa so slovami ako UNIX, Unix, unix.

grep -i 'UNix' geekfile.txt 

Výkon:

Vyhľadávanie bez rozlišovania malých a veľkých písmen

Vyhľadávanie bez rozlišovania malých a veľkých písmen

2. Zobrazenie počtu zhôd pomocou grep

Môžeme nájsť počet riadkov, ktoré zodpovedajú danému reťazcu/vzoru

grep -c 'unix' geekfile.txt 

Výkon:

Zobrazuje počet zápasov

Zobrazuje počet zápasov

3. Zobrazte názvy súborov, ktoré sa zhodujú so vzorom pomocou grep

Môžeme len zobraziť súbory, ktoré obsahujú daný reťazec/vzor.

grep -l 'unix' * 

alebo

grep -l 'unix' f1.txt f2.txt f3.xt f4.txt 

Výkon:

Názov súboru, ktorý sa zhoduje so vzorom

Názov súboru, ktorý sa zhoduje so vzorom

4. Kontrola celých slov v súbore pomocou grep

Štandardne sa grep zhoduje s daným reťazcom/vzorom, aj keď sa v súbore nachádza ako podreťazec. Voľba -w pre grep spôsobí, že sa zhodujú iba celé slová.

grep -w 'unix' geekfile.txt 

Výkon:

kontrola celých slov v súbore

kontrola celých slov v súbore

5. Zobrazenie len zhodného vzoru Pomocou grep

V predvolenom nastavení grep zobrazuje celý riadok, ktorý má zhodný reťazec. Pomocou voľby -o môžeme dosiahnuť, aby grep zobrazoval iba zhodný reťazec.

grep -o 'unix' geekfile.txt 

Výkon:

Zobrazuje sa len zodpovedajúci vzor

Zobrazuje sa len zodpovedajúci vzor

6. Zobrazte číslo riadku pri zobrazení výstupu pomocou grep -n

Ak chcete zobraziť číslo riadku súboru so zodpovedajúcim riadkom.

grep -n 'unix' geekfile.txt 

Výkon:

Pri zobrazení výstupu zobraziť číslo riadku

Pri zobrazovaní výstupu zobraziť číslo riadku

7. Invertovanie zhody vzoru pomocou grep

Pomocou voľby -v môžete zobraziť riadky, ktoré sa nezhodujú so zadaným vzorom vyhľadávacieho reťazca.

grep -v 'unix' geekfile.txt 

Výkon:

Invertovanie zhody vzoru

Invertovanie zhody vzoru

8. Priraďovanie riadkov, ktoré začínajú reťazcom pomocou grep

Vzor regulárneho výrazu ^ určuje začiatok riadku. Toto sa dá použiť v grep na priradenie riadkov, ktoré začínajú daným reťazcom alebo vzorom.

grep '^unix' geekfile.txt 

Výkon:

Priraďovanie riadkov, ktoré začínajú reťazcom

Priraďovanie riadkov, ktoré začínajú reťazcom

9. Priraďovanie riadkov končiacich reťazcom pomocou grep

Vzor regulárneho výrazu $ určuje koniec riadku. Toto sa dá použiť v grep na priradenie čiar, ktoré končia daným reťazcom alebo vzorom.

grep 'os$' geekfile.txt 

10. Určuje výraz s voľbou -e

Možno použiť viackrát:

grep –e 'Agarwal' –e 'Aggarwal' –e 'Agrawal' geekfile.txt 

11. Voľba -f súbor Preberá vzory zo súboru, jeden na riadok

cat pattern.txt 

Agarwal
Aggarwal
Agrawal

grep –f pattern.txt geekfile.txt 

12. Tlač n konkrétnych riadkov zo súboru pomocou grep

-A vytlačí hľadaný riadok a n riadkov za výsledkom, -B vytlačí hľadaný riadok a n riadkov pred výsledkom a -C vytlačí hľadaný riadok a n riadkov za a pred výsledkom.

Syntax:

grep -A[NumberOfLines(n)] [search] [file] grep -B[NumberOfLines(n)] [search] [file] grep -C[NumberOfLines(n)] [search] [file] 

Príklad:

grep -A1 learn geekfile.txt 

Výkon:

Vytlačte n konkrétnych riadkov zo súboru

Vytlačte n konkrétnych riadkov zo súboru

13. Rekurzívne vyhľadajte vzor v D zborovňa

-R vypíše hľadaný vzor v danom adresári rekurzívne vo všetkých súboroch.

Syntax:

grep -R [Search] [directory] 

Príklad:

grep -iR geeks /home/geeks 

Výkon:

./geeks2.txt:Well Hello Geeks ./geeks1.txt:I am a big time geek ---------------------------------- -i to search for a string case insensitively -R to recursively check all the files in the directory. 

Záver

V tomto článku sme diskutovali o grep> príkaz v systéme Linux, čo je výkonný nástroj na vyhľadávanie textu, ktorý používa regulárne výrazy na nájdenie vzorov alebo textu v súboroch. Ponúka rôzne možnosti, ako je nerozlišovanie malých a veľkých písmen, počítanie zhôd a zoznam názvov súborov. Vďaka možnosti rekurzívneho vyhľadávania, používania príznakov regulárneho výrazu a prispôsobenia výstupu, grep> je dôležitým nástrojom pre používateľov Linuxu na efektívne spracovanie úloh súvisiacich s textom. Mastering grep> zlepšuje vašu schopnosť pracovať s textovými údajmi v prostredí Linuxu.



Najlepšie Články

Kategórie

Zaujímavé Články