Sådan søger du efter en streng i flere filer og returnerer navnene på filer i PowerShell

Sadan Soger Du Efter En Streng I Flere Filer Og Returnerer Navnene Pa Filer I Powershell



PowerShell er et Windows-værktøj, der giver dig mulighed for at søge efter strengene i flere filer. Derudover returnerer den filnavnene, som indeholder den tilsvarende streng. PowerShell bruger ' vælg-streng ' og ' sls ” cmdlets til at søge efter strenge i flere filer. Mere specifikt svarer 'select-string' til ' greb ” kommando af Linux, som bruges til at finde tekstmønstre i filerne.

Dette indlæg vil demonstrere forskellige metoder til at søge efter en streng i flere filer.

Sådan søger du efter en streng i filer og får navnene på filer tilbage i PowerShell?

Disse tilmeldte metoder kan bruges til at søge efter en streng i flere filer:







Metode 1: Søg i en streng i flere filer og returner filnavne ved hjælp af 'select-string' Cmdlet

Strengen kan søges i flere filer ved hjælp af ' vælg-streng ' cmdlet. Denne cmdlet vælger strengene og søger efter tekstmønstre i flere filer som følger:



> Get-Childitem C:\Doc -genfald | vælg-streng -mønster 'LinuxHint'

Her:



  • Get-ChildItem ” cmdlet bruges til at hente filen fra den angivne placering.
  • -genfald ” flag tvinger søgningen til at finde den matchende streng i undermapperne.
  • | ” røroperatør bruges til at sende kommandoens output som input til den næste kommando.
  • -mønster ” flag definerer den specifikke streng, der skal søges i.

Produktion





Det givne output indikerer, at i henhold til det angivne mønster er den matchede streng med de relevante filnavne blevet returneret.



Metode 2: Søg efter en streng i flere filer og returner filnavne ved hjælp af 'sls' Cmdlet

sls ' er et alias for ' vælg-streng ” cmdlet og fungerer også på samme måde. Det ' sls kommandoen bruges sammen med ' ls ' cmdlet.

Vi har givet et eksempel for at demonstrere, hvordan ' sls ' cmdlet for at søge efter en streng i flere filer:

> ls C:\Doc - r | sls 'LinuxHint'

Her:

  • ls ” cmdlet bruges til at vise filerne og mapperne.
  • -r ' er aliaset for ' -genfald ” cmdlet brugt til at tvinge søgningen til at finde strengen i undermapper:

Det kan ses, at filnavne med den angivne streng er blevet hentet.

Konklusion

For at søge i en streng i flere filer i PowerShell skal du bruge ' vælg-streng ' eller den ' sls ' cmdlets. I den første metode skal du bruge 'select-string' med 'Get-ChildItem' cmdlet'en, '-recurse' og '-pattern' flag og pipeline (|), der forbinder output fra en kommando med input fra den anden. . I kommandoen 'sls' skal du bruge alle aliasserne for de kommandoer, der blev brugt i den første tilgang. Fordi 'sls' er aliaset for 'select-string' cmdlet'en. Dette indlæg har præsenteret flere metoder til at søge efter en streng i flere filer.