Select-String brukes til å sammenligne tekst og mønstre ved å bruke vanlige uttrykk for denne prosessen. Det implementerer søkeprosessen ved å søke linje for linje. Når den finner kampen, skrives filnavnet, linjenummeret og kampen ut.
I dette innlegget er arbeid og bruk av Powershells GREP -ekvivalente kommando beskrevet i detalj.
Hvordan bruke PowerShell Grep -ekvivalent
Som vi har blitt kjent med at GREP er en Linux-basert kommando og brukes i Linux for å finne og velge tekststrengene i en loggfil. Som GREP brukes Select-String for å finne tekstmønstrene og filene ved hjelp av vanlige uttrykk i PowerShell. De kommende eksemplene viser bedre GREP -ekvivalent i PowerShell.
Eksempel 1: Hvordan finne de spesifiserte tjenestene i PowerShell?
Get-service cmdlet skriver ut alle tjenestene (enten kjører eller stoppet) på systemet. Følgende kode bruker "Get-Service”Og“SELECT-STRING”Cmdlets for bare å få listen over stoppede tjenester.
Out-String brukes til å konvertere hvert parameterobjekt til en streng i stedet for å sammenkoble alle objektene til en enkelt fil.
> Get-Service | OUT -STRING -Stream | Velg-streng "Stoppet"
Utgangen viser at bare stoppede tjenester vises på konsollen. Kommandoen ovenfor vil få alle prosessene, og det vil bare de prosessene som for øyeblikket er stoppet.
Eksempel 2: Hvordan finne det valgte ordet i en katalog ved hjelp av PowerShell?
Select-String Cmdlet kan brukes til å finne et bestemt ord i en katalog. For å gjøre dette, vil vi først gi banen til mappen, og så oppretter vi valg-strengetilstanden etter rørledningen. Rørledningsoperatøren (|) brukes til å gi inngangen (som er utgangen fra den forrige kommandoen) til neste kommando.
Kommandoen nedenfor vil søke i mønsteret “Kraftskall”Inne i filene til“C: \ Test”Katalog:
> Get -ChildItem -Path C: \ Test | SELECT -STRING -PATTERN 'POWERSHELL'
Utgangen viser at det er to filer i "C: \ Test”Katalog som inneholder“Kraftskall”Nøkkelord.
Eksempel 3: Hvordan finne strengene i underkatalogen ved hjelp av PowerShell?
“-Gå tilbake”Flagg brukes til å utføre en spesifikk operasjon på underkataloger. Følgende kommando sjekker "Kraftskall”Søkeord inne i“C: \ Test \”Katalog. Vi har brukt “-Filter”Parameter for å utføre operasjonen bare på filer med“.tekst" Utvidelse.
> Get -ChildItem "C: \ Test" -filter *.TXT -RECURSE | Velg-streng "PowerShell"
Utgangen beskriver at tre “.txt ”-filer inneholder“Kraftskall”Nøkkelord.
Eksempel 4: Hvordan finne en streng med tilleggsinformasjon i PowerShell?
Select-String Cmdlet kan brukes til å få tilleggsinformasjonen til det søkte nøkkelordet. For eksempel bruker følgende kommando av "SELECT-STRING”Cmdlet for å sjekke“Kraftskall”Nøkkelord i tekstfilene i“C: \ Test \”. “Plukke ut”Søkeord brukes til å velge informasjonen til filene som inneholder“Kraftskall”Nøkkelord.
> Get -ChildItem "C: \ Test" -filter *.TXT -RECURSE | Velg-streng "PowerShell" | Velg filnavn, linenumber, linje, sti | Format-bord
Det kan observeres fra utgangen at "Filnavn”,“Linjenummer”,“Linje”, Og“Sti”Av filene skrives ut.
Værsågod! Du har lært det grunnleggende og avanserte nivåarbeid/bruk av PowerShell GREP -ekvivalent.
Konklusjon
De SELECT-STRING Cmdlet er GREP -ekvivalent i PowerShell. Grep er Linux og Unix-lignende kommando som brukes til å finne de vanlige uttrykkene. Dette innlegget definerer og forklarer PowerShell GREP -ekvivalent -kommandoen. De SELECT-STRING Cmdlet kan brukes til å få filene som inneholder et spesifikt mønster. Den kan også brukes til å få ytterligere informasjon om filene som inneholder en spesifikk streng eller tekst.