Linux-terminalen er full av nyttige kommandoer, men få er så kraftige som de tilsynelatende enkle grep. Det står for Global Regular Expression Print, skriver ut resultatene av brukerdefinerte systemsøk etter samlinger av tegn.

grep er ekstremt kraftig, men kan være ganske skremmende å bruke, så i dag vil du lære noe grunnleggende. Hvis du leter etter informasjon i dokumentene på maskinen din, vil du vanligvis lete etter flere ord samtidig.

Denne artikkelen fokuserer på hvordan du søker i flere strenger ved hjelp av grep og vil vise deg noen lignende tips og triks for å bruke grep generelt.

Søker etter flere strenger i grep

Før du begynner, må du forsikre deg om at du er kjent med noen grunnleggende Linux. Først må du kunne hente frem en terminal – på de fleste systemer gjør du dette med tastekombinasjonen Ctrl + Alt + T, eller via applikasjonsmenyen.

Du må også være kjent med hvordan du refererer til filer etter bane ved å bruke terminalen. For eksempel, hvis du ønsker å angi banen for et tekstdokument som ligger i en mappe kalt

arbeid inne i hjem mappen, vil du referere til den ved å bruke dette formatet:

~/work/textdocument.txt

Denne syntaksen, ved hjelp av ~ og /, etterfulgt av plasseringen til filen i hjemmemappen, er det du skal bruke til å vise grep-kommandoen hvilke filer du skal søke etter.

La oss si at du for eksempel ønsket å finne hver forekomst av ordene Bie og Vanessa i et tekstdokument som inneholder manuset fra Bee-filmen fra 2007. Syntaksen ser slik ut:

grep -E 'bee| Vanessa' ~/work/beescript.txt

Når du kjører denne kommandoen, får du tilbake en liste over hver linje i dokumentet som inneholder ordet Bie eller ordet Vanessa.

La oss bryte ned den kommandoen litt:

grep -E

Den første delen kjører grep-kommandoen med -E alternativ. Dette leder grep til å søke ved hjelp av en Eutvidet regulært uttrykk. Ulike typer regulære uttrykk er et emne for en annen dag – og mestring av regulære uttrykk krever en levetid - men for formålet med denne opplæringen lar kommandoen fet-E deg søke i flere strenger ved å bruke grep.

grep -E 'bee| Vanessa'

Den neste delen inneholder strengene du vil søke etter. De må stå i enkle anførselstegn, med et rør mellom hvert ord.

grep -E 'bee| Vanessa' ~/work/beescript.txt

Den siste delen av grep-kallet tar banen til filen du ønsker å søke i; i dette tilfellet, manuset til Bee-filmen fra 2007.

grep tips og triks

Dette er en flott start, men det finnes mange praktiske måter å bruke grep på. Nå som du vet hvordan du finner flere strenger, her er noen kommandoer som kan ta den kraften til neste nivå:

grep -E 'bee| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt

Dette er veldig likt den forrige kommandoen, bortsett fra at den returnerer alle linjer som inneholder bee og Vanessa fra både Bee-filmmanuset og fra min egen Bee-historietekstfil.

Alle disse omtalene av bier blir imidlertid ganske vanskelige å lese.

grep -E 'bee| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt | mindre

Dette tar den samme grep-kommandoen og overfører den til mindre. Dette åpner resultatene i et format som er lett å navigere, slik at du kan bla opp og ned ved hjelp av j og k tastene og søk i resultatene ved å bruke / nøkkel.

grep -E 'bee| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt > beeresults.txt

På samme måte som mindre-kommandoen, tar den nevnte kommandoen grep-resultatene og lagrer dem alle i en egen fil. Du kan deretter åpne denne filen i din favoritt tekstredigerer for videre redigering.

I slekt: Jukseark for Linux-kommandoer

Arbeide med grep i Linux

Forhåpentligvis får du en ide om hvor kraftig grep kan være – og dette skraper ikke en gang i overflaten. Gå videre, og grep!

Hvordan fikk Grep navnet sitt? Historien bak Greps skapelse

Har du noen gang lurt på hva Grep står for? Her er den sanne historien bak opprettelsen av Grep.

Les Neste

DelekvitringE-post
Relaterte temaer
  • Linux
  • Linux-kommandoer
  • Linux Bash Shell
Om forfatteren
Ian Buckley (219 artikler publisert)

Ian Buckley er en frilansjournalist, musiker, utøver og videoprodusent bosatt i Berlin, Tyskland. Når han ikke skriver eller står på scenen, tuller han med DIY-elektronikk eller kode i håp om å bli en gal vitenskapsmann.

Mer fra Ian Buckley

Abonner på vårt nyhetsbrev

Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!

Klikk her for å abonnere