Napisao Rubaiat Hossain
E-mail

Naredba grep koristi se za traženje nizova u tekstualnoj datoteci. Evo deset primjera grepa koji bi vam mogli biti korisni.

Naredba grep omogućuje pristup uslužnom programu grep, moćnom alatu za obradu datoteka koji se koristi za pronalaženje uzoraka u tekstualnim datotekama. Ima mnogo praktičnih slučajeva upotrebe i zasigurno je jedna od najčešće korištenih Linux naredbi. Ovaj vodič ilustrira neke jednostavne, ali korisne Linux grep naredbe koje se koriste u stvarnom svijetu.

Primjer datoteke za demonstraciju

Stvorili smo referentnu datoteku kako bismo čitateljima pomogli da učinkovitije razumiju grep. Kopiju ove datoteke možete stvoriti izdavanjem sljedeće naredbe ljuske u vašem terminalu.

mačka <> test-datoteka
Ovo je jednostavna tekstualna datoteka koja sadrži
višestruke žice kao i neki telefonski brojevi
(555) 555-1234 (567) 666-2345
i e-pošta plus web adrese
[email protected]
https://google.com
ftp://mywebserver.com
KRAJ
instagram viewer

1. Pronađi tekst u datotekama

Da biste tražili uzorak teksta u datoteci, jednostavno pokrenite grep iza kojeg slijedi naziv uzorka. Također navedite naziv datoteke koja sadrži tekst.

grep testna datoteka "e-pošte"

Ova naredba će prikazati redak u našem test-datoteka koja sadrži riječ e-mail. Također možete pretraživati ​​isti tekst u više datoteka pomoću grep-a.

grep "primjer" / usr / share / dict / american-english / usr / share / dict / british-english

Gornja naredba prikazuje sve instance riječi primjer u Američki engleski i Britanski engleski datoteke rječnika.

2. Pronađite riječi s točnim podudaranjem

Naredba Linux grep ilustrirana u ranijem primjeru također navodi redove s djelomičnim podudaranjima. Upotrijebite donju naredbu ako su vam potrebne samo točne pojave riječi.

grep -w testna datoteka "string"

The -w ili --word-regexp opcija grep ograničava izlaz samo na točno podudaranje. Grep se sastoji od nekih dodatnih zastavica koje se mogu koristiti i sa zadanom naredbom.

Povezano: Kako je Grep dobio ime? Povijest iza Grepove kreacije

3. Zanemari razlikovanje velikih i malih slova

Prema zadanim postavkama, grep traži uzorke na velika i mala slova. Međutim, možda ćete to htjeti isključiti ako ne znate u kojem slučaju je obrazac unaprijed.

grep -i "ova" testna datoteka

Koristiti -i ili --ignore-case opcija za isključivanje osjetljivosti na velika i mala slova.

4. Prebrojite broj uzoraka

The -c zastava znači računati. Prikazuje broj podudaranja koja su pronađena za određeni uzorak. Administratori to mogu koristiti za pronalaženje određenih informacija o sustavu.

Možete cijevi naredba ps s grep za brojanje procesa koji pripadaju trenutnom korisniku.

ps -ef | grep -c $ KORISNIK

Sljedeća naredba prikazuje broj MP3 datoteke prisutne u direktoriju.

ls ~ / Glazba | grep -c .mp3

5. Prikaži brojeve linija koji sadrže podudarnosti

Možda ćete htjeti pronaći brojeve linija koji sadrže određeno podudaranje. Koristiti -n ili - linija-broj opcija grepa da to postigne.

mačka / etc / passwd | grep -n rubaiat

Ova je opcija osobito korisna za ispravljanje pogrešaka izvornih kodova i rješavanje problema datoteka dnevnika. Za prikaz svih brojeva za retke u ~ / .vimrc koji se koriste za konfiguriranje Vim uređivača teksta:

grep -n "set" ~ / .vimrc

6. Pronađite nazive datoteka pomoću proširenja

Da biste dobili popis svih MP3 datoteke prisutne u ~ / Glazba imenik:

ls ~ / Glazba / | grep ".mp3"

Možete zamijeniti .mp3 s bilo kojim drugim nastavcima za pronalaženje određenih datoteka. Sljedeća naredba navodi sve php datoteke prisutne u trenutnom radnom direktoriju.

ls | grep ".php"

7. Pronađite uzorke u komprimiranim datotekama

Naredba Linux grep također može pronaći uzorke unutar komprimiranih datoteka. Morat ćete koristiti zgrep naredba za to, međutim. Prvo stvorite komprimiranu arhivu našeg test-datoteka upisivanjem:

gzip ispitna datoteka

Sada možete pretraživati ​​tekst ili druge uzorke unutar rezultirajuće arhive.

zgrep e-mail test-file.gz

8. Pronađite adrese e-pošte

Administratori također mogu navesti adrese e-pošte iz tekstualnih datoteka pomoću naredbe Linux grep. Sljedeći primjer to čini traženjem uzorka regularnog izraza.

grep '^ [a-zA-Z0-9] \ + @ [a-zA-Z0-9] \ + \. [a-z] \ {2, \}' testna datoteka

Možete pronaći regularne izraze za obavljanje sličnih poslova ili ih možete sami stvoriti ako znate kako rade.

9. Pronađite telefonske brojeve pomoću Grepa

Regularne izraze grep možete koristiti za filtriranje telefonskih brojeva iz tekstualne datoteke. Imajte na umu da biste morali prilagoditi obrazac kako bi odgovarao vrsti telefonskih brojeva koji su vam potrebni.

grep '\ (([0-9] \ {3 \}) \ | [0-9] \ {3 \} \) [-] \? [0-9] \ {3 \} [-] \? [0-9] \ {4 \} 'test-datoteka

Spomenuta naredba filtrira deseteroznamenkaste američke telefonske brojeve.

10. Pronađite URL-ove iz izvornih datoteka

Možemo iskoristiti snagu grepa za navođenje URL-ova koji se nalaze u tekstualnim datotekama. Sljedeća naredba ispisuje sve URL-ove prisutne u test-datoteka.

grep -E "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4}) "test-datoteka

Ponovno koristimo -E opcija za proširene regularne izraze. Također možete koristiti egrep naredba da se ovo ne doda.

egrep "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4})" test -datoteka

Ovladavanje Linux Grep naredbom

Predstavili smo nekoliko korisnih primjera naredbe Linux grep za rješavanje stvarnih problema. Iako ovi primjeri ilustriraju snagu grepa za obradu teksta, morat ćete svladati regularne izraze ako želite biti super produktivni s grepom.

Ponekad se korisnici Linuxa susreću s određenim situacijama u kojima se ne mogu sjetiti raznih opcija povezanih s naredbom. Nadamo se da vam Linux operativni sustav pruža načine za dobivanje pomoći za naredbeni redak za gotovo svaki uslužni program sustava.

E-mail
7 načina za dobivanje pomoći za naredbeni redak na Linuxu

Sve bitne naredbe za učenje o Linux naredbama iz naredbenog retka

Pročitajte Dalje

Povezane teme
  • Linux
  • Linux
  • Linux naredbe
O autoru
Rubaiat Hossain (Objavljeno 15 članaka)

Rubaiat je CS student sa snažnom strašću prema otvorenom kodu. Osim što je Unix veteran, bavi se i mrežnom sigurnošću, kriptografijom i funkcionalnim programiranjem. Strastveni je kolekcionar polovnih knjiga i neprestano se divi klasičnom rocku.

Više od Rubaiat Hossain-a

Pretplatite se na naše obavijesti

Pridružite se našem biltenu za tehničke savjete, recenzije, besplatne e-knjige i ekskluzivne ponude!

Još jedan korak…!

Potvrdite svoju e-adresu u e-pošti koju smo vam upravo poslali.

.