Hvordan ekskludere kamper med grep

Hvordan ekskludere kamper med grep
GREP står for "Global Regular Expression Print" har vært en mye brukt kommando i Linux -plattformen. Det har blitt brukt til å gjøre mange funksjoner mens du bruker forskjellige flagg -nøkkelord. GREP-kommandoen med "-V" kan brukes på flere måter for å ekskludere kampene fra filene. La oss se skarpt på hver enkelt av dem en etter en. For det første må du ha noen tekstfil for å utføre GREP -kommandoen på den. Så vi har brukt “New.txt ”-fil som finnes i vår hjemmekatalog. Dermed må vi bruke "Cat" -spørsmålet i konsollen for å vise dataene til denne filen. Filen inneholder totalt 6 linjer, som illustrert på bildet. $ kattfilnavn

Ekskluder ved hjelp av enkeltmønster

Den aller første metoden for å ekskludere det beskrevne mønsteret fra filen er å bruke "-v" -flagget i "grep" -instruksjonen er den enkleste og enkle. I denne kommandoen vil vi vise alt innholdet i en fil ved hjelp av "katt" -instruksjon og ekskludere de tekstlinjene som er matchet fra den definerte. GREP- og CAT -kommandoen er atskilt med en separatorlinje. Så vi har brukt mønsteret “CSS” i spørringen. Alle linjene som inneholder mønsteret "CSS" i dem, vil bli ekskludert fra utgangsdataene. Dermed vises alle de gjenværende linjene på skallet. Utgangen viser at det ikke er noen linje i de resulterende dataene som inneholder mønsteret "CSS". Kommandoen vises på bildet.

$ katt ny.txt | grep -v “CSS”

En annen måte å bruke den samme GREP -kommandoen på er uten "Cat" -instruksjonen. På denne måten må du bare nevne mønsteret i inverterte komma etter flagget “-v” og legge til filnavnet etter det. GREP -kommandoen vil ekskludere de matchede mønsterlinjene og vise de gjenværende i skallet. Utgangen er som forventet i henhold til bildet under.

$ grep -v “css” ny.tekst

La oss bruke et annet eksklusivt mønster i GREP -kommandoen for å ekskludere linjene. Så vi har brukt strengen “IS” i stedet for “CSS” denne gangen. Ettersom ordet "er" brukes mye i filen, ekskluderte det alle de 4 linjene som inneholder ordet "er" i utgangen. Dermed var det bare to linjer som gjensto å vises på skallet.

$ grep -v “er” nytt.tekst

La oss se hvordan GREP -kommandoen fungerer på det nye ekskluderende mønsteret denne gangen. Så vi har brukt mønsteret “e” i kommandoen som skal utelukkes. Utgangen viser ingenting. Dette viser at mønsteret er funnet i hver linje i filen, da vi vet at alfabetet “E” har blitt mest brukt i ord. Derfor er det ingenting igjen å vises på konsollen fra filen Ny.tekst.

$ grep -v “e” nytt.tekst

Ekskludere bruk av flere mønstre

Ovennevnte eksempler illustrerer ekskluderende tekster fra filene med et enkelt mønster nevnt i kommandoen. Nå vil vi bruke de flere mønstrene i samme syntaks av kommandoer for å se hvordan det fungerer. Så vi har brukt den aller første syntaksen til GREP -kommandoen for å ekskludere linjene fra filen “Ny.txt ”og viser de gjenværende linjene. Vi har brukt de to mønstrene som skal søkes og deretter ekskludert fra filen, i.e., “CSS” og “er”. Mønstrene er blitt definert med flagget “-e” hver for seg. Som de 5 linjene til det nye.TXT -filen inneholder begge mønstrene, den viser bare den gjenværende 1 linjen i terminalen som vist.

$ katt ny.txt | grep -v -e “css” -e “er”

La oss bruke den andre syntaksen til GREP -spørringen i skallet for å ekskludere matchende mønstre eller relaterte linjer mens du bruker flere mønstre. Så vi har brukt mønsteret “tekst” og “er” i kommandoen for å ekskludere linjene fra filen “Ny.tekst". Utgangen til denne spørringen viser den eneste linjen som ikke har noe ord matchet med det spesifiserte mønsteret.

$ grep -v -e “tekst” -e “er” ny.tekst

Det er en annen unik måte å ekskludere flere mønstre fra filen ved å bruke GREP -kommandoen. Kommandoen er nesten den med en liten endring. Du må legge alfabetet “E” med flagget “-V”. Etter det må du legge til flere mønstre som skal ekskluderes i de omvendte kommaene som er adskilt med en separatorlinje. Eksempelkommandoen vises nedenfor. Vi søkte etter mønstrene “T” og “K” fra filen Ny.txt for å ekskludere linjene som inneholder disse mønstrene. Til gjengjeld har vi satt igjen med bare 3 linjer som vises på bildet.

$ grep -ev “t | k” nytt.tekst

Ekskluder ved bruk av saksfølsomt flagg

Som "-V" -flagget, kan du også bruke et case-sensitivt flagg i GREP-kommandoen for å ekskludere mønsteret. Det vil fungere på samme måte som det fungerer for "-v" -flagget, men med mer nøyaktighet. Du kan bruke det i henhold til ditt ønske. Så vi har brukt “-i” -flagget med “-v” -flagget i kommandoen. Å søke etter mønsteret “tekst” i filen “Ny.tekst". Denne filen inneholder en linje som har strengen "tekst" i den som en helhet. Derfor har hele linjen blitt ekskludert fra filen ved å bruke kommandoen nedenfor.

$ grep -i -v -e “tekst” ny.tekst

La oss bruke en annen fil for å ekskludere mønstre fra den. Dataene til denne filen er vist nedenfor.

$ kattest.tekst

La oss bruke den samme saksfølsomme flaggkommandoen for å ekskludere linjene som inneholder mønsteret "tekst" i filen. Til gjengjeld er de tekstede linjene fjernet, og bare de stiplede linjene blir vist.

$ grep -i -v -e “tekst” -test.tekst

Konklusjon

Denne artikkelen inneholder forskjellige måter å bruke Linux GREP -kommandoen for å ekskludere matchende mønstre fra filene. Vi utdypet flere eksempler for å avklare begrepet grep for å ekskludere kamper. Vi håper at du vil finne denne artikkelen flott mens du utforsker “grep” ekskluderer mønsterkommandoen i Linux.