Det här inlägget kommer att visa olika metoder för att söka efter en sträng i flera filer.
Hur man söker efter en sträng i filer och får tillbaka namnen på filer i PowerShell?
Dessa värvade metoder kan användas för att söka efter en sträng i flera filer:
Metod 1: Sök efter en sträng i flera filer och returnera filnamn med 'select-string' Cmdlet
Strängen kan sökas i flera filer med hjälp av ' välj-sträng ' cmdlet. Den här cmdleten väljer strängarna och söker efter textmönster i flera filer enligt följande:
> Get-Childitem C:\Doc -återfall | välj-sträng -mönster 'LinuxHint'
Här:
- ' Get-ChildItem ” cmdlet används för att hämta filen från den angivna platsen.
- ' -återfall flaggan tvingar sökningen att hitta den matchande strängen i undermapparna.
- ' | ” pipe operator används för att skicka kommandots utdata som indata för nästa kommando.
- ' -mönster ” flaggan definierar den specifika strängen som ska sökas.
Produktion
Den givna utdata indikerar att enligt det angivna mönstret har den matchade strängen med de relevanta filnamnen returnerats.
Metod 2: Sök efter en sträng i flera filer och returnera filnamn med 'sls' Cmdlet
' sls ' är ett alias för ' välj-sträng ” cmdlet och fungerar också på samma sätt. den ' sls kommandot används med ' ls ' cmdlet.
Vi har gett ett exempel för att visa hur ' sls ” cmdlet för att söka efter en sträng i flera filer:
> ls C:\Doc - r | sls 'LinuxHint'Här:
- ' ls ” cmdlet används för att lista filerna och mapparna.
- ' -r ' är aliaset för ' -återfall ” cmdlet används för att tvinga sökningen att hitta strängen i undermappar:
Det kan observeras att filnamn med den angivna strängen har hämtats framgångsrikt.
Slutsats
För att söka efter en sträng i flera filer i PowerShell, använd ' välj-sträng ' eller den ' sls ' cmdlets. I den första metoden, använd 'select-string' med 'Get-ChildItem' cmdleten, '-recurse' och '-pattern' flaggor och pipeline (|) som förenar utdata från ett kommando med input från det andra . I kommandot 'sls', använd alla alias för kommandona som användes i den första metoden. Eftersom 'sls' är aliaset för 'select-string'-cmdleten. Det här inlägget har presenterat flera metoder för att söka efter en sträng i flera filer.