grep

Grep med linjenummeret i output

Grep med linjenummeret i output
Global regulært udtryk er et alsidigt værktøj, der søger almindelig tekst i systemet med forskellige regulære udtryk. Vi kan udføre mange operationer ved hjælp af Grep; vi kan udforske i filer, vise linjenummer som output, og hvordan vi ignorerer tomme mellemrum, og bruge Grep rekursivt. Grep med linjenummeret viser linienummeret for den relevante tekst, der findes i filen. Denne funktion udføres ved hjælp af -n. Fra Grep-siden kan vi let beskrive forskellige kommandoer.

$ mand grep

Forudsætning

For at nå dette nuværende mål om at opnå et specifikt linjenummer i teksten, skal vi have et system til at køre kommandoer på det, som er Linux-operativsystemet. Linux er installeret og konfigureret på den virtuelle maskine. Når du har angivet et brugernavn og en adgangskode, kan du få adgang til applikationerne.

Linjenummeret til at matche et ord

Generelt når vi bruger Grep-kommandoen, efter Grep-nøgleordet, er det ord, der skal udforskes, skrevet og efterfulgt af filnavnet. Men ved at få linjenummeret tilføjer vi -n i vores kommando.

$ grep -n er file22.txt

Her “er” er det ord, der skal udforskes. Startlinjenummeret viser, at den relaterede fil indeholder ordet i forskellige linjer; hver linje har et fremhævet ord, der viser den matchende linje til den relevante søgning.

Linjenummeret for hele teksten i filen

Linjenummeret for hver linje i filen er vist ved hjælp af en bestemt kommando. Det viser ikke kun teksten, men dækker også de tomme mellemrum og nævner også deres linjenumre. Tallene vises på venstre side af output.

$ nl fileb.txt

Fileb.txt er et filnavn. Mens n er for linjenumrene, og l viser kun filnavnet. Hvis vi har søgt efter et bestemt ord i en fil, viser det kun filnavne.

Samtidig med det foregående eksempel er her (undtagen ledig plads), som er specialtegn, der er nævnt. De vises og læses også af kommandoen for at vise linjenummeret. I modsætning til det første eksempel på artiklen viser denne enkle kommando linjens nummer nøjagtigt, hvordan det findes i filen. Da der ikke er nogen begrænsning i søgning, erklærer kommandoen.

Vis kun linjenummer

For kun at få linienumrene med data i den respektive fil kan vi nemt følge nedenstående kommando.

$ grep -n kommandofileg.txt | klippe -d: -f1

Kommandoen for første halvdel før operatøren er forståelig, fordi vi har diskuteret tidligere i denne artikel. Klip-d bruges til at klippe kommandoen, hvilket betyder at undertrykke visningen af ​​tekst i filerne.

Giv output i en enkelt linje

Efter ovenstående kommando vises output på en enkelt linje. Det fjerner det ekstra mellemrum mellem de to linjer og viser kun det linjenummer, der er nævnt i de foregående kommandoer.

$ grep -n kommandofileg.txt | klippe -d: -f1 | tr “\ n” ““

Den højre del af kommandoen viser, hvordan output vises. Klippet bruges til at klippe kommandoen. Hvorimod andet "|" ansøges om at bringe til samme linje.

Vis linjenummer for strengen i underkatalogen

For at demonstrere eksemplet på underkataloger bruges denne kommando. Det søger efter ordet "1000", der findes i filer i denne givne mappe. Filnummeret vises i starten af ​​linjen på venstre side af output og viser forekomsten af ​​1000 i prcd-mappen ved 370 bånd og i Webmin er 393 gange.

$ grep -n 1000 / etc / services

Dette eksempel er godt til at finde en fejl, der opstår chancer i dit system ved at kontrollere og sortere bestemte ord fra biblioteket eller underkatalogen. / Etc / beskriver stien til det bibliotek, der har en mappe med tjenester.

Vis efter et ord i filen

Som allerede beskrevet i eksemplerne ovenfor hjælper ordet med at søge i teksten i filerne eller mappen. Søgte ord skrives i omvendte kommaer. På den meget venstre side af output nævnes et linjenummer, der viser forekomsten af ​​navnet på hvilken linje i en fil. “6” viser, at ordet Aqsa er til stede på linje 6 efter linje 3. Fremhævning af det specifikke ord gør det lettere for brugeren at forstå dette koncept.

$ grep -n 'Aqsa' fil23.txt

Outputtet viser hele strengen i filen, ikke kun det eneste ord, der findes i strengen, og det fremhæver kun det givne ord.

Bashrc

Dette er et nyttigt eksempel på at få linienummeret i output. Dette søger i alle mapper, og vi behøver ikke at angive katalogstien. Som standard er det implementeret i alle mapper. Det viser alle outputdataene på de filer, der findes i underkataloger, da vi ikke behøver at nævne et bestemt ord, der skal søges gennem kommandoen.

$ Cat -n .bashrc

Det er en udvidelse af alle tilstedeværende mapper. Ved at specificere udvidelsesnavnet kan vi vise de relevante data, dvs.e., log ind detaljerede filer.

Søg i alle filer

Denne kommando bruges til at søge i filen i alle filer, der har disse data. File * viser, at den vil søge fra alle filer. Filnavnet vises med linjenummeret efter navnet ved start af linjen. Det relevante ord er fremhævet for at vise eksistensen af ​​ordet i teksten i filen.

$ grep -n min fil *

Søg i filtypenavne

I dette eksempel søges ordet i alle filer i en bestemt udvidelse, dvs.txt. Kataloget, der er angivet i kommandoen, er stien til alle leverede filer. Outputtet viser også vejen i henhold til udvidelsen. Linjenummeret er angivet efter filnavnene.

$ grep -n min fil *

Konklusion

I denne artikel har vi lært, hvordan man får linjenummeret i output ved at anvende forskellige kommandoer. Vi håber, at denne indsats kan hjælpe med at få tilstrækkelig information om det relevante emne.

SuperTuxKart til Linux
SuperTuxKart er en fantastisk titel designet til at give dig Mario Kart-oplevelsen gratis på dit Linux-system. Det er ret udfordrende og sjovt at spil...
Kæmp om Wesnoth-vejledning
Slaget om Wesnoth er et af de mest populære open source-strategispil, som du kan spille på dette tidspunkt. Ikke kun har dette spil været under udvikl...
0 A.D. Vejledning
Ud af de mange strategispil derude, 0 A.D. formår at skille sig ud som en omfattende titel og et meget dybt, taktisk spil på trods af at det er open s...