Noen ganger står brukerne overfor behovet for å søke etter spesifikk informasjon i noen filer. Ofte inneholder konfigurasjonsdokumenter eller andre volumetriske data et stort antall linjer, så manuelt finner de nødvendige dataene virker ikke. Deretter kommer en av de innebygde kommandoene i operativsystemene på Linux til redning, som vil tillate lanseringen av radene bokstavelig talt i sekunder.
Vi bruker GREP-kommandoen i Linux
Når det gjelder forskjellene mellom distribusjonene av Linux, spiller de i dette tilfellet ikke noen rolle, siden GREP-kommandoen du er interessert i standard er tilgjengelig i de fleste bygninger og er absolutt det samme. I dag vil vi diskutere ikke bare handlingen av GREP, men også for å demontere hovedargumentene som lar deg betydelig forenkle søkeprosedyren.
Opprett CAT-kommandoen + filnavnet, hvis du vil vise hele innholdet. Detaljert instruksjoner for arbeid med denne kommandoen leter etter i en annen artikkel som referanse nedenfor.
Les mer: Eksempler på CAT-kommandoen i Linux
Takket være utførelsen av de ovennevnte handlingene, kan du bruke Grep mens du er i ønsket katalog, uten å angi hele banen til filen.
Standard søk på innhold
Før du bytter til vurderingen av alle tilgjengelige argumenter, er det viktig å merke det vanlige innholdssøket. Det vil være nyttig på det tidspunktet det er nødvendig å finne en enkel matchende og vise alle de aktuelle linjene.
- I kommandoprompten, skriv inn GREP WORD TESTFILE, hvor Word er ønsket informasjon, og TESTFILE er navnet på filen. Når du søker, mens du er utenfor mappen, angir du hele veien til eksempel / Hjem / Bruker / Mappe / Filnavn. Når du har tastet inn kommandoen, klikker du på Enter-tasten.
- Det forblir bare for å gjøre deg kjent med de tilgjengelige alternativene. Full linjer vises på skjermen, og nøkkelverdiene vil bli uthevet i rødt.
- Det er viktig å ta hensyn til og registrere brev, siden Linux-kodingen ikke er optimalisert for å søke etter store eller små tegn. Hvis du vil omgå definisjonen av registeret, skriv inn Grep -I-ordet "TESTFILE.
- Som du kan se, i det neste skjermbildet, har resultatet endret seg og en ny linje ble lagt til.
Søk med strengfangst
Noen ganger må brukerne ikke bare finne den eksakte kampen på radene, men også for å finne ut informasjonen som kommer etter dem, for eksempel når du rapporterer en bestemt feil. Deretter vil den riktige løsningen anvende attributter. Skriv inn GREP -A3 "Word" TestFile-konsollen for å aktivere i resultatet og tre neste linjer etter tilfeldighet. Du kan skrive -a4, så vil fire linjer bli fanget, det er ingen restriksjoner.
Hvis i stedet - en du bruker argumentet -B + antall linjer, som et resultat, vil dataene som oppstår opp til inngangspunktet vises.
Argumentet er i sin tur fanger linjene rundt søkeordet.
Nedenfor kan du se eksempler på å tildele disse argumentene. Vær oppmerksom på at det er nødvendig å ta hensyn til registret og skrive doble anførselstegn.
Grep -b3 "ord" testfile
Grep -c3 "ord" testfile
Søk etter søkeord i begynnelsen og på enden av rader
Behovet for å definere et søkeord som står i begynnelsen eller på slutten av linjen, oppstår oftest under arbeid med konfigurasjonsfiler, hvor hver linje er ansvarlig for en parameter. For å se den nøyaktige oppføringen i begynnelsen, er det nødvendig å registrere GREP "^ Word" TestFile. Tegnet ^ er bare ansvarlig for å bruke dette alternativet.
Søket etter innhold på slutten av linjene skjer omtrent av samme prinsipp, bare i anførselstegn bør legge til et tegn, og laget finner denne typen: Grep "Word $" TestFile.
Søk etter tall
Når du søker etter de ønskede verdiene, har brukeren ikke alltid informasjon om det nøyaktige ordet som er tilstede i strengen. Deretter kan søkeprosedyren gjøres gjennom tallene som noen ganger sterkt forenkler oppgaven. Det er bare nødvendig å bruke kommandoen i form av GREP "[0-7]" TESTFILE, hvor "[0-7]" - rekkevidde av verdier, og testfilen er navnet på filen for skanning.
Analyse av alle katalogfiler
Skanning Alle objekter i en mappe kalles rekursiv. Brukeren er pålagt å bruke bare ett argument, som analyserer alle mappefiler og vil vise de aktuelle linjene og deres plassering. Du må skrive inn GREP -R "Word" / Hjem / Bruker / Mappe, hvor / Hjem / Bruker / Mappe er banen til skanningskatalogen.
Filoppbevaring vil bli vist i blått, og hvis du vil få rader uten denne informasjonen, tilordne et annet argument slik at kommandoen får et slikt grep -h -r "ord" + banen til mappen.
Nøyaktig søk i henhold til
I begynnelsen av artikkelen har vi allerede snakket om det vanlige søkeordet. Men med denne metoden vil det bli vist ytterligere kombinasjoner i resultatene. For eksempel finner du brukerordet, men laget vil også vise bruker123, passordbytter og andre tilfeldigheter, hvis noen. For å unngå et slikt resultat, tilordne et argument -W (GREP -W "Word" + filnavn eller dets sted).
Dette alternativet utføres, og når du må søke etter flere nøyaktige søkeord. I dette tilfellet, skriv inn Egrep -w 'Word1 | Word2' Testifile. Vær oppmerksom på at i dette tilfellet er bokstaven E lagt til Grep, og anførselstegnene er single.
Strengsøk uten et bestemt ord
Verktøyet under vurdering kan ikke bare finne ord i filer, men også for å vise linjer der det ikke er noen verdi som er spesifisert av brukeren. Deretter, før du skriver inn nøkkelverdien og filen er lagt til -V. Takket være det, når du aktiverer kommandoen, vil du bare se de relevante dataene.
Syntaks Grep samlet flere flere argumenter, som kan bli kort annonsert:
- -Jeg - Vis bare navnene på filer som passer under søkekriteriene;
- -s-deaktivere varsler om feilene som er funnet;
- -N - Vis linjenummeret i filen;
- -B - Vis blokknummer foran linjen.
Ingenting hindrer deg i å bruke flere argumenter for ett opphold, bare skriv inn dem gjennom rommet, ikke glem å vurdere registret.
I dag demonterte vi ARP-kommandoen tilgjengelig i Linux-distribusjonene. Det er en av standarden og ofte brukt. Du kan lese om andre populære verktøy og deres syntaks i et separat materiale i henhold til følgende lenke.
Se også: Ofte brukte kommandoer i Terminal Linux