Hvordan bruker jeg grep til å søke på en fil på Linux?

Hvordan bruker jeg grep til å søke på en fil på Linux?
GREP er en allsidig kommando som tillater sortering av innspill ved å følge komplekse regler og forskrifter. Det er en kraftig kommando i et Linux -miljø. Det er ikke for å søke på filer direkte på systemet ditt. Det viser filnavnene som indikerer den spesielle delen av strengen som samsvarer med din del til stede i søket. I den aktuelle artikkelen vil vi forklare noen eksempler for å la deg forstå søk ved hjelp av grep.

Syntaks

Grep [mønster] [fil]

Mønsteret skal være et ord eller symbol som skal søkes i filen.

Forutsetninger

For vellykket arbeid med grep i systemet ditt, må du ha Linux -operativsystem installert. Etter konfigurasjon vil du gi brukerinformasjonen til å ha privilegier for å få tilgang til applikasjonene installert. Gå fremover, gå til terminal -kommandolinjen ved å bruke en hurtigtast CTRL+ALT+T.

GREP -installasjon

$ Sudo apt-get install grep

Hvis du ennå ikke har installert GREP, kan du installere depoter av GREP i Ubuntu ved å bruke denne kommandoen.

Grep manual

For å vite om GREP -kommandoene, kan vi gå til Man -siden. Grep er veldig allsidig og lar brukere bruke den på kompliserte måter.

$ Mann grep

Noen eksempler som hjelper til med å forstå funksjonaliteten til GREP er som følger:

-Jeg skiller på saken blir ignorert

-n Skriv ut linjenummeret med utdata

-r Søk i alle kataloger på Linux

-Farge viser det matchede resultatet i farger

Vis alle filer

Hvis du allerede har Ubuntu -filer og vil liste dem for å se alle filnavn og utvidelser, kan du bruke følgende siterte kommando.

$ ls

Du vil ganske enkelt bruke “LS” -kommandoen for å vise alle opprettet filer.

Filoppretting hvis ikke allerede eksisterer

For å forstå funksjonaliteten til å søke i en fil, må vi ha en fil eller filer som er opprettet i systemet vårt. Hvis du ikke har noen filer, bør du opprette filer. Fil i Linux er laget på mer enn en måte. En enkel metode som vi skal bruke beskrives som følgende.

$ ekko “tekst”> filnavn

Echo -ordet brukes til å vise data i Linux -kommandoen. Ved hjelp av denne kommandoen vil brukeren kunne opprette en fil og legge inn data i den ved å bruke den samme kommandoen. I det aktuelle eksemplet er navnet på filen File20.tekst. Ettersom filen inneholder tekst, så har vi brukt filen utvidelse av ”.tekst.”

Tilsvarende er et annet eksempel på filoppretting at vi har laget mer enn en fil om gangen.

Søkefil ved å sortere et ord

En fil i Linux kan søkes gjennom et ord. Syntaksen er ganske forståelig.

$ grep “teknisk” fil*

Denne kommandoen viser ikke bare filnavnet, men også dataene som er til stede i den. I det nåværende eksemplet vil du vite at ordet som vi har søkt fremover for å vise dens eksistens i filen. Videre er filnavnet skrevet innledningsvis, "fil*" betyr å søke på det aktuelle ordet i alle filer. Slik hjelper et enkelt ord med å skaffe utgangen av filnavn.

Søkefil ved å bruke “-l”

“-L” er en kommando som brukes til å vise bare navnene på filer i Linux.

$ grep -l filen min*

Som kommandoen nevnt ovenfor, er “My” et ord som vi ønsker å søke i filer. Som vi har beskrevet ovenfor at "fil*" betyr å søke i alle filer som er opprettet i systemet. Vi kan observere at det er fire filnavn med ”.txt ”-utvidelser og en uten utvidelse. Det betyr at alle filer som har spesielle ord vises. Vi vil videre se hvor spesifikt vi kan søke i en fil ved å nevne utvidelsen.

Søkefil etter filforlengelse

I forrige eksempel har vi sett at alle filer ble sortert. Men for å vise filnavn av spesifikke utvidelser under skriftlig kommando brukes “*.TXT ”representerer utvidelsestypen til en fil slik at alle filer skal være av denne utvidelsen.

Dette er grunnleggende diskriminering mellom de to siste eksemplene som holdes gjennom filutvidelse.

$ grep -l “min” *.tekst

Søkefil ved å bruke “-e”

Det kan eksistere en situasjon der du vil søke på filer ved hjelp av mer enn ett ord i forskjellige filer. I denne typen scenarier bør vi bruke alternativet "-e". For eksempel vil du søke på filene som har tre spesifikke ord, så anbefales denne kommandoen. Søk vil bli brukt på alle filer som er til stede i din nåværende arbeidskatalog. Disse filene må være av tekstutvidelse, da det er en begrensning av tekst.

$ grep -e min -e aqsa -e teknisk *.tekst

Grep, aqsa og teknisk er tre ord basert på søkefiler. Alle disse ordene blir fremhevet uansett hvor disse ordene finnes i bestemte filer. Filnavn er nevnt i start. Det er en mulighet for eksistensen av bare et enkelt ord i en fil.

Søkedata for en enkelt fil

I tidligere eksempler har vi sett at filnavnet vises med data som er til stede i filen. Hvis vi ikke vet at dataene som er til stede i filen eller et enkelt ord er huskbar, kan vi søke i filen ved hjelp av ordet.

$ grep 'aqsa' fil20.tekst

I dette eksemplet henter kommandoen hele data ved hjelp av et ord i filen.

Søkedata gjennom mer enn en enkelt fil

Som det foregående eksemplet, blir det nå gjort søk av ett ord, men i to filer. Begge filene er av tekstutvidelse, og ordet som er til stede i begge filene blir fremhevet. Filnavn vises også som vi har søkt ved hjelp av begge filnavnene.

$ grep 'aqsa' fil20.TXT File23.tekst

Vis ordens eksistens i filen

Å sjekke filens eksistens eller tilstedeværelse av ordene i en fil. “-Q” -flagget brukes, og det fungerer for å søke på bestemte begrep i alle filer som viser “1” eller “0” som utdata. Hvis "1" kommer, betyr det at det ikke er noen kamp, ​​men hvis kampen blir funnet, viser den "0".

Konklusjon

Vi har forklart hvert eksempel i detalj for å forfølge informasjon for brukere. Det vil gjelde for GREP -filen som søker uanstrengt på filer og i filene i Linux -miljøet.