grep

Grep naredba u Linuxu

Grep naredba u Linuxu
Naredba Grep (globalni ispis regularnog izraza) najsnažniji je i redovito korišten uslužni program Linux naredbenog retka. Pomoću Grepa možete tražiti korisne informacije određivanjem kriterija pretraživanja. Traži određeni obrazac izraza u navedenoj datoteci. Kad pronađe podudaranje, ispisuje sve retke datoteke koja se podudara s navedenim uzorkom. Dobro vam dođe kada morate filtrirati velike datoteke dnevnika.

U ovom ćemo članku objasniti upotrebu grep uslužnog programa s različitim primjerima. Koristit ćemo Debian 10 za objašnjavanje naredbi i metoda spomenutih u ovom članku.

Instaliranje Grepa

Grep se instalira u većini Linux distribucija. Međutim, u slučaju da nedostaje u vašem sustavu, možete ga instalirati na sljedeći način u terminalu:

$ sudo apt-get install grep

Koristeći Grep

Evo osnovne sintakse naredbe grep. Počinje s grep, nakon čega slijede neke opcije i kriteriji pretraživanja, a zatim završava s nazivom datoteke.

$ grep [opcije] UZORAK [FILE…]

Potražite datoteke

Da biste tražili naziv datoteke u direktoriju koji sadrži određeni niz, možete koristiti grep na sljedeći način:

$ ls -l | grep -i “niz

Na primjer, za traženje naziva datoteke koji sadrži niz “test“, Naredba bi bila:

$ ls -l | grep -i test

Ova naredba navodi sve datoteke koje sadrže niz “test".

Potražite niz u datoteci

Za traženje niza u određenoj datoteci možete upotrijebiti sljedeću sintaksu naredbe:

$ grep naziv datoteke "string"

Na primjer, za traženje niza „test”U datoteci s imenom ispitna datoteka1, koristili smo sljedeću naredbu:

$ grep test datoteka "zaposlenika "1

Gornji izlaz vratio je rečenicu iz datoteke ispitna datoteka1 koji sadrži niz "zaposlenik".

Potražite niz u više datoteka

Za traženje niza u više datoteka možete upotrijebiti sljedeću sintaksu naredbe:

$ grep “string” ime datoteke1 ime datoteke2

Na primjer, za traženje niza "zaposlenik" u naše dvije datoteke testfile1 i testfile2, koristili smo sljedeću naredbu:

$ grep test zaposlenika1 testfile1 testfile2

Gornja naredba popisat će sve retke koji sadrže niz "zaposlenik" iz obje datoteke testfile1 i testfile2.

Također možete koristiti zamjenski znak ako sva imena datoteka počinju istim tekstom.

$ grep "string" naziv datoteke *

Kao, ako uzmemo gornji primjer u kojem su bila naša imena datoteka testfile1 i testfile2 , naredba bi bila:

$ grep testna datoteka zaposlenika *

Potražite niz u datoteci zanemarujući slučaj niza

Najčešće ste se susreli s tim kada nešto tražite pomoću grepa, ali ne dobijete izlaz. To se događa zbog neusklađenosti slučajeva prilikom traženja niza. Kao u našem primjeru, ako pogrešno koristimo "Zaposlenik" umjesto "zaposlenik", Vratit će nulu jer naša datoteka sadrži niz"zaposlenik”Malim slovima.

Možete reći grepu da ignorira slučaj niza pretraživanja pomoću oznake -i nakon grepa na sljedeći način:

$ grep -i naziv datoteke "string"

Korištenjem zastavice -i, naredba će izvršiti pretraživanje bez velikih i malih slova i vratit će sve retke koji sadrže niz “zaposlenik”U njemu bez uzimanja u obzir slova su velika ili mala.

Pretražujte pomoću regularnog izraza

Ako se pravilno koristi, regularni izraz vrlo je učinkovita značajka u grep-u. Pomoću naredbe Grep možete definirati regularni izraz s početnom i završnom ključnom riječi. Na taj način nećete trebati upisivati ​​cijeli redak naredbom grep. U tu se svrhu može koristiti sljedeća sintaksa.

$ grep “početna ključna riječ.* ENDKEYWORD ”naziv datoteke

Na primjer, za traženje retka u datoteci nazvanoj testfile1 koja započinje nizom "this" i završava nizom "data", koristili smo sljedeću naredbu:

$ grep “ovo.* podaci ”testfile1

Ispisat će cijeli redak s ispitna datoteka1 koji sadrži izraz (početna ključna riječ „ovo“ i završna ključna riječ „podaci“).

Ispišite određeni broj redaka nakon / prije niza za pretraživanje

Također možete prikazati određeni broj redaka u datoteci prije / nakon podudaranja niza zajedno sa samim podudarnim nizom. U tu se svrhu može koristiti sljedeća sintaksa:

$ grep -A Naziv datoteke "string"

Prikazat će N broj redaka nakon što se niz podudara u navedenoj datoteci, uključujući podudarni niz.

Na primjer, ovo je naša uzorkovana datoteka testfile2.

Sljedeća naredba će iznijeti podudarni redak koji sadrži niz “zaposlenik”, Zajedno s 2 retka nakon njega.

$ grep -A 2 -i testna datoteka "zaposlenika "2

Slično tome, za prikaz N broja redaka prije podudarnog niza u određenoj datoteci, upotrijebite sljedeću sintaksu:

$ grep -B Naziv datoteke "string"

Za prikaz N broja redaka oko niza u određenoj datoteci upotrijebite sljedeću sintaksu:

$ grep -C Naziv datoteke "string"

Isticanje pretraživanja

Grep prema zadanim postavkama ispisuje podudarne linije, ali ne prikazuje kojem se dijelu retka podudara. Ako koristite opciju -color s grep, ona će pokazati gdje se obradni nizovi pojavljuju u vašoj datoteci. Grep prema zadanim postavkama koristi crvenu boju za isticanje.

U tu se svrhu može koristiti sljedeća sintaksa:

$ grep naziv datoteke "string" --color

Brojanje broja podudaranja

Ako želite računati koliko se puta određena riječ pojavljuje u određenoj datoteci, možete upotrijebiti grep s -c opcijom. Vraća samo broj utakmica, a ne same utakmice. U tu se svrhu može koristiti sljedeća sintaksa:

$ grep -c naziv datoteke "string"

Ovo je naša ogledna datoteka koja izgleda ovako:

Slijedi primjer naredbe koja je vratila broj puta riječ datoteka pojavio se u datoteci s imenom testfile3.

Obrnuta pretraga

Ponekad želite izvršiti obrnuto pretraživanje koje prikazuje sve retke, osim onih koji odgovaraju unosu. Da biste to učinili, jednostavno upotrijebite zastavicu -v iza koje slijedi grep:

$ grep -v naziv datoteke "string"

Na primjer, za prikaz svih redaka u datoteci testfile3 koji u sebi ne sadrže riječ "račun", koristili smo sljedeću naredbu:

$ grep -v testna datoteka „računa “3

Korištenje Grepa s drugim naredbama

Grep se također može koristiti za filtriranje potrebnog rezultata iz različitih izlaza naredbi. Na primjer, iz "apt -instalirani popis ” Izlaz naredbe, želite pronaći samo pakete koji su automatski instalirani, rezultat možete filtrirati pomoću grep-a na sljedeći način:

$ apt --instalirani popis | grep automatski

Slično tome, lscpu pruža detaljne informacije o CPU-u. Ako vas samo zanimaju informacije u vezi s arhitekturom CPU-a, možete ih filtrirati pomoću sljedeće naredbe:

$ lscpu | grep Arhitektura

U ovom smo članku opisali neke primjere koji će vam pomoći u razumijevanju grep naredbi i njihove upotrebe u različitim uvjetima. Snažno držanje grep naredbe može uštedjeti puno vremena ako trebate pogledati velike datoteke konfiguracije ili dnevnika i pregledati korisne informacije kroz njih.

Bitka za Wesnoth 1.13.6 Razvoj objavljen
Bitka za Wesnoth 1.13.6 objavljeno prošlog mjeseca, šesto je razvojno izdanje u izdanju 1.13.x series i donosi niz poboljšanja, ponajviše korisničkog ...
Kako instalirati League Of Legends na Ubuntu 14.04
Ako ste ljubitelj League of Legends, ovo je prilika za vas da testirate League of Legends. Imajte na umu da je LOL podržan na PlayOnLinux ako ste kori...
Instalirajte najnoviju strategiju igre OpenRA na Ubuntu Linux
OpenRA je Libre / Free Real Time strateški pokretač igre koji stvara rane Westwoodove igre poput klasične Command & Conquer: Red Alert. Distribuirani ...