Naredba 'grep' označava 'ispis globalnog regularnog izraza' . grep naredba filtrira sadržaj datoteke što olakšava našu pretragu.
To je uslužni program naredbenog retka za pretraživanje grupa podataka običnog teksta za retke koji su isti kao regularni izraz. Ime 'zahvat' dolazi od naredbe, tj. ed, koja sadrži isti učinak. Izvorno, grep je dizajniran za operativni sustav Unix, ali je kasnije postao dostupan za svaki sustav sličan Unixu i nekoliko drugih poput OS 9.
Filtar grep pronalazi datoteku za određeni uzorak znakova i prikazuje svaki redak koji uključuje taj uzorak. Znakovi bi trebali biti pod navodnicima ako se pojavljuju u parametru uzorka s posebnim značenjem za ljusku. Obično cijeli uzorak moramo staviti u jedan navodnik ako parametar uzorka nije uobičajeni niz.
string u java metodama
U izrazu poput [a-z], znak minus (-) cml opisuje raspon temeljen na trenutnom redoslijedu uspoređivanja. Nalog za uspoređivanje može specificirati ekvivalentne klase u rasponima znakova za korištenje. Naredba grep pretpostavlja stdin kada se ne spominju datoteke.
Uzorak se naziva regularni izraz koji se nalazi unutar datoteke. Uzorak su ograničeni regularni izrazi u formatu naredbe egrep ili ed. Naredba grep primjenjuje solidan nedeterministički algoritam. Dobro nam dolazi kada trebamo filtrirati velike datoteke dnevnika.
Kratka povijest grep
Prije nego što je dobio naziv, grep je bio povjerljivi uslužni program koji je specificirao Ken Thompson pronaći datoteke za nekoliko uzoraka. Nepoznato za njegovo postojanje, Doug Mcllroy zatražio od Thompsona da odredi takvu funkciju. Odgovorivši da će preko noći smisliti takav alat. Thompson je napravio poboljšanja i ispravio bogs oko jedan sat na svom programu poznatom kao 's' (ili traženje). Sutradan je predstavio funkciju Mcllroyju, koji je rekao da je ista kao što je želio. Thompsonov opis može opisati vjerovanje da je naredba grep određena preko noći.
Thompson je naveo početnu verziju u asemblerskom jeziku PDP-11 za podršku Lee E. McMohan provjera teksta federalističkih radova kako bi se odlučilo o autorstvu pojedinog rada. Uređivač teksta imao je podršku za regularne izraze, ali se nije mogao koristiti na tako velikom tekstu; Thompson je taj kod kopirao u samostalni alat. Odabrao je ime zbog in ed; naredba grep ispisala bi svaki redak kao opisani uzorak. Prvo, grep je dodan u verziji 4 Unixa, govoreći da 'općenito se navodi kao prototip softverskog alata' , Mcllroy je odobrio grep s 'nepovratno ukorijenjen' Thompsonova filozofija alata u Unixu.
Implementacije grep
Niz grep implementacija prisutan je u nekoliko okruženja za razvoj softvera i operativnih sustava. Rane verzije uključivale su fgrep i egrep, predstavljene u verziji 7 Unixa. Verzija egrep podržava sintaksu za prošireni regularni izraz koji je uključio Alfred Aho nakon izvorne implementacije regularnog izraza Kena Thompsona. Verzija fgrep-a pronalazi bilo koji fiksni popis nizova s Aho-Corasick algoritam podudaranja nizova . Ove binarne verzije dostupne su u modernim sustavima, spajaju se na grep ili pozivaju grep skriptu ljuske koristeći ispravnu zastavu dodanu dok su općenito raspoređene na POSIX sustavima.
Ostale naredbe uključuju 'zahvat' riječi za predstavljanje oni su alati za pronalaženje, obično oni koji ovise o podudaranjima regularnih izraza. Na primjer, korisnost, tj. 'pgrep' , prikazuje procese čiji su naslovi isti kao dani regularni izraz.
- Grep je naziv ugrađene funkcije koja traži elemente unutar popisa koji zabavljaju određeno svojstvo u Perl programski jezik.
- Obično se ova funkcija višeg reda poziva 'filtar' ili 'gdje' na drugom jeziku.
- Naredba, tj. pcregrep , je grep implementacija koja koristi sintaksu za Perl regularni izraz. Ista se funkcionalnost može dodati grep GNU verziji korištenjem oznake -P.
- Također, grep portovi (npr. in GnuWin32 i Cygwin ) izvršiti u sustavu Microsoft Windows. Nekoliko verzija sustava Windows nudi istu naredbu findstr ili qgrep.
- Također, grep naredba je dio MSX-DOS2 alata ASCII za 2 verziju MSX-DOS-a.
- Naredbe fgrep, egrep i grep su isporučene u IBM i OS.
Softver Adobe InDesign ima GREP funkcije (od izdanja CS3) u dijaloškom okviru kartice za promjenu/pronalaženje 'GREP' i navedene pomoću CS4 u 'GREP stilovi' stilovi odlomaka.
Kako instalirati grep u Linux?
Grep dolazi unaprijed instaliran u gotovo svakoj distribuciji Linuxa. Međutim, u slučaju da ga možemo instalirati pomoću donje naredbe u prozoru terminala ako nedostaje u našem sustavu:
$ sudo apt-get install grep
grep s cijevi
usporedba nizova u Javi
Naredba 'grep' općenito se koristi s cijevi (|) .
Sintaksa:
command | grep
Primjer:
cat marks.txt | grep 9
Pogledajte gornju snimku, naredba grep filtrira sve podatke koji sadrže '9'.
grep bez cijevi
Može se koristiti i bez cijevi.
Sintaksa:
grep
Primjer:
grep 9 marks.txt
Pogledajte gornju snimku, naredba grep radi isti posao kao prethodni primjer, ali bez cijevi.
grep opcije
Sintaksa:
grep -v
Primjer:
grep -v 9 marks.txt
Pogledajte gornju snimku, naredba 'grep -v 9 marks.txt' prikazuje retke koji ne sadrže našu riječ za pretraživanje '9'.
Sintaksa:
grep -i
Primjer:
grep -i red exm.txt
Pogledajte gornju snimku, naredba 'grep -i red exm.txt' prikazuje sve retke koji sadrže 'crveno' bilo velikim ili malim slovima.
grep - Naredba se koristi za prikaz linija iza rezultata .
grep -B naredba koristi se za prikaz linija prije rezultata .
grep -C naredba koristi se za prikaz redak poslije i redak prije rezultat.
Možete koristiti (A1, A2, A3.....)(B1, B2, B3....)(C1, C2, C3....) za prikaz bilo kojeg broja redaka.
Sintaksa:
dodati string java
grep -A grep -B grep -C
Primjer:
grep -A1 yellow exm.txt grep -B1 yellow exm.txt grep -C1 yellow exm.txt
Pogledajte gornju snimku, naredba 'grep -A1 yellow exm.txt' prikazuje traženi redak sa sljedećim retkom, naredba 'grep -B1 žuti exm.txt' prikazuje traženi redak s jednim prethodnim retkom i naredbom 'grep -C1 žuti exm.txt' prikazuje traženi redak s jednim prethodnim i sljedećim retkom.