Sdílet prostřednictvím


Select-String

Najde text v řetězcích a souborech.

Syntax

File (Výchozí)

Select-String
    [-Pattern] <string[]>
    [-Path] <string[]>
    [-SimpleMatch]
    [-CaseSensitive]
    [-Quiet]
    [-List]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-NotMatch]
    [-AllMatches]
    [-Encoding <string>]
    [-Context <Int32[]>]
    [<CommonParameters>]

Object

Select-String
    [-Pattern] <string[]>
    -InputObject <psobject>
    [-SimpleMatch]
    [-CaseSensitive]
    [-Quiet]
    [-List]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-NotMatch]
    [-AllMatches]
    [-Encoding <string>]
    [-Context <Int32[]>]
    [<CommonParameters>]

LiteralFile

Select-String
    [-Pattern] <string[]>
    -LiteralPath <string[]>
    [-SimpleMatch]
    [-CaseSensitive]
    [-Quiet]
    [-List]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-NotMatch]
    [-AllMatches]
    [-Encoding <string>]
    [-Context <Int32[]>]
    [<CommonParameters>]

Description

Rutina Select-String vyhledává text a textové vzory ve vstupních řetězcích a souborech. Můžete použít Select-String podobné grep v UNIXu nebo findstr.exe ve Windows.

Select-String je založen na řádcích textu. Ve výchozím nastavení Select-String najde první shodu v každém řádku a pro každou shodu zobrazí název souboru, číslo řádku a veškerý text na řádku obsahujícím shodu. Můžete přímo Select-String najít více shod na řádek, zobrazovat text před a za shodou nebo zobrazit logickou hodnotu (Pravda nebo Nepravda), která označuje, zda byla nalezena shoda.

Select-String používá porovnávání regulárních výrazů, ale může také provést shodu, která vyhledá ve vstupu text, který zadáte.

Select-String může zobrazit všechny shody nebo zastavení textu po první shodě v každém vstupním souboru. Select-String lze použít k zobrazení veškerého textu, který neodpovídá zadanému vzoru.

Můžete také určit, že Select-String by měly očekávat konkrétní kódování znaků, například při vyhledávání souborů textu Unicode. Select-String pomocí značky bajtů (BOM) rozpozná formát kódování souboru. Pokud soubor neobsahuje boM, předpokládá se, že kódování je UTF8.

Příklady

Příklad 1: Vyhledání shody s rozlišováním velkých a malých písmen

V tomto příkladu se rozlišují malá a velká písmena textu odesílaného kanálu do rutiny Select-String.

'Hello', 'HELLO' | Select-String -Pattern 'HELLO' -CaseSensitive -SimpleMatch

Textové řetězce Hello a HELLO se odesílají do rutiny Select-String. Select-String používá parametr vzoru k určení HELLO . Parametr CaseSensitive určuje, že velikost písmen se musí shodovat pouze s velkými písmeny. SimpleMatch je volitelný parametr a určuje, že řetězec ve vzoru není interpretován jako regulární výraz. Select-String v konzole PowerShellu zobrazí HELLO.

Příklad 2: Hledání shod v textových souborech

Tento příkaz prohledá všechny soubory s příponou názvu souboru .txt v aktuálním adresáři. Výstup zobrazí řádky v těchto souborech, které obsahují zadaný řetězec.

Get-Alias | Out-File -FilePath .\Alias.txt
Get-Command | Out-File -FilePath .\Command.txt
Select-String -Path .\*.txt -Pattern 'Get'
Alias.txt:8:Alias            cat -> Get-Content
Alias.txt:28:Alias           dir -> Get-ChildItem
Alias.txt:43:Alias           gal -> Get-Alias
Command.txt:966:Cmdlet       Get-Acl
Command.txt:967:Cmdlet       Get-Alias

V tomto příkladu se Get-Alias a Get-Command používají s rutinou Out-File k vytvoření dvou textových souborů v aktuálním adresáři, Alias.txt a Command.txt.

Select-String používá parametr Path se zástupným znakem hvězdička (*) k prohledání všech souborů v aktuálním adresáři s příponou názvu souboru .txt. Parametr vzoru určuje text, který se má shodovat s Get-. Select-String zobrazí výstup v konzole PowerShellu. Název souboru a číslo řádku předchází každému řádku obsahu, který obsahuje shodu pro parametr Pattern.

Příklad 3: Vyhledání shody vzorů

V tomto příkladu se prohledá více souborů, aby se vyhledaly shody zadaného vzoru. Vzor používá kvantifikátor regulárního výrazu. Další informace najdete v tématu about_Regular_Expressions.

Select-String -Path "$PSHOME\en-US\*.txt" -Pattern '\?'
C:\Program Files\PowerShell\6\en-US\default.help.txt:27:    beginning at https://go.microsoft.com/fwlink/?LinkID=108518.
C:\Program Files\PowerShell\6\en-US\default.help.txt:50:    or go to: https://go.microsoft.com/fwlink/?LinkID=210614

Rutina Select-String používá dva parametry, Path a Pattern. Parametr Path používá proměnnou $PSHOME, která určuje adresář PowerShellu. Zbytek cesty zahrnuje podadresář en-US a určuje každý *.txt soubor v adresáři. Parametr Pattern určuje, aby odpovídal otazníku (?) v každém souboru. Zpětné lomítko (\) se používá jako řídicí znak a je nezbytné, protože otazník (?) je kvantifikátor regulárního výrazu. Select-String zobrazí výstup v konzole PowerShellu. Název souboru a číslo řádku předchází každému řádku obsahu, který obsahuje shodu pro parametr Pattern.

Příklad 4: Použití Select-String ve funkci

Tento příklad vytvoří funkci, která vyhledá vzor v souborech nápovědy PowerShellu. V tomto příkladu funkce existuje pouze v relaci PowerShellu. Po zavření relace PowerShellu se funkce odstraní. Další informace najdete v tématu about_Functions.

PS> Function Search-Help
>> {
>> $PSHelp = "$PSHOME\en-US\*.txt"
>> Select-String -Path $PSHelp -Pattern 'About_'
>> }
PS>

PS> Search-Help

C:\Windows\System32\WindowsPowerShell\v1.0\en-US\about_ActivityCommonParameters.help.txt:2:   about_ActivityCommonParameters
C:\Windows\System32\WindowsPowerShell\v1.0\en-US\about_ActivityCommonParameters.help.txt:31:  see about_WorkflowCommonParameters.
C:\Windows\System32\WindowsPowerShell\v1.0\en-US\about_ActivityCommonParameters.help.txt:33:  about_CommonParameters.

Funkce se vytvoří na příkazovém řádku PowerShellu. Příkaz Function používá název Search-Help. Stisknutím klávesy Enter začněte do funkce přidávat příkazy. Na příkazovém řádku >> přidejte jednotlivé příkazy a stiskněte Enter, jak je znázorněno v příkladu. Po přidání koncové závorky se vrátíte do příkazového řádku PowerShellu.

Funkce obsahuje dva příkazy. Proměnná $PSHelp ukládá cestu k souborům nápovědy PowerShellu. $PSHOME je instalační adresář PowerShellu s podadresářem en-US, který určuje každý *.txt soubor v adresáři.

Příkaz Select-String ve funkci používá parametry Path a Pattern. Parametr Path používá k získání cesty proměnnou $PSHelp. Parametr vzoru používá jako kritéria hledání řetězec About_.

Chcete-li funkci spustit, zadejte Search-Help. Příkaz Select-String funkce zobrazí výstup v konzole PowerShellu.

Příklad 5: Vyhledání řetězce v protokolu událostí Systému Windows

Tento příklad vyhledá řetězec v protokolu událostí Systému Windows. Proměnná $_ představuje aktuální objekt v kanálu. Viz about_Automatic_Variablespro více informací.

$Events = Get-WinEvent -LogName Application -MaxEvents 50
$Events | Select-String -InputObject {$_.message} -Pattern 'Failed'

Rutina Get-WinEvent používá k zadání protokolu aplikace parametr LogName. Parametr MaxEvents získá z protokolu 50 nejnovějších událostí. Obsah protokolu je uložen v proměnné s názvem $Events.

Proměnná $Events se odešle do kanálu do rutiny Select-String. Select-String používá parametr InputObject. Proměnná $_ představuje aktuální objekt a message je vlastnost události. Parametr Pattern je typ řetězce Failed a hledá shody v $_.message. Select-String zobrazí výstup v konzole PowerShellu.

Příklad 6: Vyhledání řetězce v podadresářích

Tento příklad prohledá adresář a všechny jeho podadresáře pro konkrétní textový řetězec.

Get-ChildItem -Path C:\Windows\System32\*.txt -Recurse | Select-String -Pattern 'Microsoft' -CaseSensitive

Get-ChildItem používá parametr Path k určení C:\Windows\System32*.txt. Parametr Recurse zahrnuje podadresáře. Objekty se odesílají do kanálu Select-String.

Select-String používá parametr vzor a určuje řetězec Microsoft. Parametr CaseSensitive slouží k porovnání přesného případu řetězce. Select-String zobrazí výstup v konzole PowerShellu.

Poznámka:

V závislosti na vašich oprávněních se ve výstupu může zobrazit Odepření přístupu zpráv.

Příklad 7: Vyhledání řetězců, které neodpovídají vzoru

Tento příklad ukazuje, jak vyloučit řádky dat, které neodpovídají vzoru.

Get-Command | Out-File -FilePath .\Command.txt
Select-String -Path .\Command.txt -Pattern 'Get', 'Set'  -NotMatch

Rutina Get-Command odešle objekty dolů kanálu do Out-File a vytvoří Command.txt soubor v aktuálním adresáři. Select-String pomocí parametru Path určuje soubor Command.txt. Parametr vzoru určuje Get a Nastavit jako vzor hledání. Parametr NotMatch vyloučí z výsledků Get a Set. Select-String zobrazí výstup v konzole PowerShellu, která nezahrnuje Get nebo Set.

Příklad 8: Vyhledání řádků před a za shodou

Tento příklad ukazuje, jak získat řádky před a za odpovídajícím vzorem.

Get-Command | Out-File -FilePath .\Command.txt
Select-String -Path .\Command.txt -Pattern 'Get-Computer' -Context 2, 3
  Command.txt:1186:Cmdlet          Get-CmsMessage            3.0.0.0    Microsoft.PowerShell.Security
  Command.txt:1187:Cmdlet          Get-Command               3.0.0.0    Microsoft.PowerShell.Core
> Command.txt:1188:Cmdlet          Get-ComputerInfo          3.1.0.0    Microsoft.PowerShell.Management
> Command.txt:1189:Cmdlet          Get-ComputerRestorePoint  3.1.0.0    Microsoft.PowerShell.Management
  Command.txt:1190:Cmdlet          Get-Content               3.1.0.0    Microsoft.PowerShell.Management
  Command.txt:1191:Cmdlet          Get-ControlPanelItem      3.1.0.0    Microsoft.PowerShell.Management
  Command.txt:1192:Cmdlet          Get-Counter               3.0.0.0    Microsoft.PowerShell.Diagnostics

Rutina Get-Command odešle objekty dolů kanálu do Out-File a vytvoří Command.txt soubor v aktuálním adresáři. Select-String pomocí parametru Path určuje soubor Command.txt. Parametr Pattern určuje Get-Computer jako vzor hledání. Parametr Context používá dvě hodnoty, před a za a vzor značky ve výstupu pomocí úhlové závorky (>). Parametr Context vypíše dva řádky před první shodu vzorku a tři řádky za poslední shodu vzorku.

Příklad 9: Vyhledání všech shod vzorů

Tento příklad ukazuje, jak AllMatches parametr najde shodu jednotlivých vzorů v řádku textu. Ve výchozím nastavení Select-String najde pouze první výskyt vzoru v řádku textu. Tento příklad používá vlastnosti objektu nalezené pomocí rutiny Get-Member.

PS> $A = Get-ChildItem -Path "$PSHOME\en-US\*.txt" | Select-String -Pattern 'PowerShell'

PS> $A

C:\Windows\System32\WindowsPowerShell\v1.0\en-US\about_ActivityCommonParameters.help.txt:5:    Describes the parameters that Windows PowerShell
C:\Windows\System32\WindowsPowerShell\v1.0\en-US\about_ActivityCommonParameters.help.txt:9:    Windows PowerShell Workflow adds the activity common

PS> $A.Matches

Groups   : {0}
Success  : True
Name     : 0
Captures : {0}
Index    : 4
Length   : 10
Value    : PowerShell

PS> $A.Matches.Length

2073

PS> $B = Get-ChildItem -Path "$PSHOME\en-US\*.txt" | Select-String -Pattern 'PowerShell' -AllMatches

PS> $B.Matches.Length

2200

Rutina Get-ChildItem používá parametr Path. Parametr Path používá proměnnou $PSHOME, která určuje adresář PowerShellu. Zbytek cesty zahrnuje podadresář en-US a určuje každý *.txt soubor v adresáři. Objekty Get-ChildItem jsou uloženy v proměnné $A. Proměnná $A se odešle do kanálu do rutiny Select-String. Select-String používá parametr Pattern k vyhledání řetězce PowerShellu.

Z příkazového řádku PowerShellu se zobrazí obsah $A proměnných. Existuje řádek, který obsahuje dva výskyty řetězce PowerShellu.

Vlastnost $A.Matches obsahuje první výskyt vzoru powershellu na každém řádku.

Vlastnost $A.Matches.Length počítá první výskyt vzoru PowerShellu na každém řádku.

Proměnná $B používá stejné rutiny Get-ChildItem a Select-String, ale přidá parametr AllMatches. všechny výskyty vzorů najde PowerShellu na každém řádku. Objekty uložené v $A a proměnné $B jsou identické.

Vlastnost $B.Matches.Length se zvyšuje, protože pro každý řádek se počítá každý výskyt vzoru PowerShellu.

Parametry

-AllMatches

Označuje, že rutina hledá více než jednu shodu v každém řádku textu. Bez tohoto parametru Select-String najde pouze první shodu v každém řádku textu.

Když Select-String najde více než jednu shodu na řádku textu, stále vygeneruje pouze jeden objekt MatchInfo pro tento řádek, ale vlastnost Matches objektu obsahuje všechny shody.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-CaseSensitive

Označuje, že v rutině se rozlišují malá a velká písmena. Ve výchozím nastavení se shody nerozlišují malá a velká písmena.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Context

Zachytí zadaný počet řádků před a za čárou, která odpovídá vzoru.

Pokud jako hodnotu tohoto parametru zadáte jedno číslo, určuje toto číslo počet řádků zachycených před a za shodou. Pokud jako hodnotu zadáte dvě čísla, první číslo určuje počet řádků před shodou a druhé číslo určuje počet řádků za shodou. Například: -Context 2,3.

Ve výchozím zobrazení jsou čáry se shodou označené pravou závorkou (>) (ASCII 62) v prvním sloupci zobrazení. Neznačené řádky jsou kontextem.

Parametr Context nezmění počet objektů vygenerovaných Select-String. Select-String pro každou shodu vygeneruje jeden objekt MatchInfo. Kontext je uložen jako pole řetězců v Context vlastnost objektu.

Když se výstup příkazu Select-String odešle do kanálu do jiného příkazu Select-String, bude přijímající příkaz prohledávat pouze text na odpovídajícím řádku. Odpovídající řádek je hodnota Line vlastnost MatchInfo objektu, nikoli text v kontextových řádcích. Výsledkem je, že parametr Context není platný u přijímajícího příkazu Select-String.

Pokud kontext obsahuje shodu, MatchInfo objekt pro každou shodu zahrnuje všechny kontextové čáry, ale překrývající se čáry se zobrazí pouze jednou v zobrazení.

Vlastnosti parametru

Typ:

Int32[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Encoding

Určuje typ kódování cílového souboru. Výchozí hodnota je Default.

Přijatelné hodnoty pro tento parametr jsou následující:

  • ASCII používá znakovou sadu ASCII (7bitová).
  • BigEndianUnicode používá UTF-16 s pořadím velkých bajtů.
  • Výchozí Používá kódování odpovídající aktivní znakové stránce systému (obvykle ANSI).
  • OEM Používá kódování odpovídající aktuální znakové stránce OEM systému.
  • Unicode používá UTF-16 s minimálním pořadím bajtů.
  • UTF7 používá UTF-7.
  • UTF8 používá UTF-8.
  • UTF32 používá UTF-32 s malým pořadím bajtů.

Vlastnosti parametru

Typ:String
Default value:Default
Přípustné hodnoty:ASCII, BigEndianUnicode, Default, OEM, Unicode, UTF7, UTF8, UTF32
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Exclude

Vyloučí zadané položky. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek cesty nebo vzor, například *.txt. Jsou povoleny zástupné symboly.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:True
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Include

Zahrnuje zadané položky. Hodnota tohoto parametru kvalifikuje parametr Path. Zadejte prvek cesty nebo vzor, například *.txt. Jsou povoleny zástupné symboly.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:True
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-InputObject

Určuje text, který se má prohledávat. Zadejte proměnnou, která obsahuje text, nebo zadejte příkaz nebo výraz, který získá text.

Použití parametru InputObject není totéž jako odesílání řetězců směrem dolů do kanálu do Select-String.

Když předáte více než jeden řetězec do rutiny Select-String, vyhledá zadaný text v každém řetězci a vrátí každý řetězec, který obsahuje hledaný text.

Když použijete parametr InputObject k odeslání kolekce řetězců, Select-String zachází s kolekcí jako s jedním kombinovaným řetězcem. Select-String vrátí řetězce jako jednotku, pokud najde hledaný text v libovolném řetězci.

Vlastnosti parametru

Typ:PSObject
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

Object
Position:Named
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-List

Z každého vstupního souboru se vrátí pouze první instance odpovídajícího textu. Jedná se o nejefektivnější způsob, jak načíst soubory seznamu, jejichž obsah odpovídá regulárnímu výrazu.

Ve výchozím nastavení Select-String vrátí MatchInfo objekt pro každou nalezenou shodu.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-LiteralPath

Určuje cestu k souborům, které se mají prohledávat. Hodnota parametru LiteralPath se používá přesně tak, jak je zadaný. Žádný znak není interpretován jako zástupný znak. Pokud cesta obsahuje únikové znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby žádné znaky neinterpretoval jako únikové sekvence. Další informace najdete v about_Quoting_Rules.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:PSPath

Sady parametrů

LiteralFile
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-NotMatch

Parametr NotMatch najde text, který neodpovídá zadanému vzoru.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Path

Určuje cestu k souborům, které se mají prohledávat. Jsou povoleny zástupné symboly. Výchozí umístění je místní adresář.

Zadejte soubory v adresáři, například log1.txt, *.docnebo *.*. Pokud zadáte jenom adresář, příkaz selže.

Vlastnosti parametru

Typ:

String[]

Default value:Local directory
Podporuje zástupné znaky:True
DontShow:False

Sady parametrů

File
Position:1
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-Pattern

Určuje text, který se má najít na každém řádku. Zadejte řetězec nebo regulární výraz. Pokud zadáte řetězec, použijte parametr SimpleMatch .

Informace o regulárních výrazech najdete v tématu about_Regular_Expressions.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:0
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Quiet

Označuje, že rutina vrací logickou hodnotu (True nebo False) namísto objektu MatchInfo . Hodnota je True, pokud je vzor nalezen; v opačném případě je hodnota False.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-SimpleMatch

Označuje, že rutina používá jednoduchou shodu místo shody regulárního výrazu. V jednoduché shodě Select-String prohledá vstup textu v parametru Pattern. Neinterpretuje hodnotu parametru Pattern jako příkaz regulárního výrazu.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

PSObject

Můžete předat libovolný objekt, který má metodu ToString do Select-String.

Výstupy

Microsoft.PowerShell.Commands.MatchInfo or System.Boolean

Ve výchozím nastavení je výstupem sada objektů MatchInfo s jedním pro každou nalezenou shodu. Pokud použijete parametr Quiet , výstupem je logická hodnota, která označuje, zda byl vzor nalezen.

Poznámky

Select-String je podobný grep v UNIXu nebo findstr.exe ve Windows.

Alias sls pro rutinu Select-String byl zaveden v PowerShellu 3.0.

Poznámka:

Podle schválených příkazů PowerShelluje oficiální předpona aliasu pro rutiny Select-*sc, nikoli sl. Proto by měl být správný alias pro Select-Stringscs, nikoli sls. Toto pravidlo je výjimkou.

Pokud chcete použít Select-String, zadejte text, který chcete najít jako hodnotu parametru Pattern. Chcete-li zadat hledaný text, použijte následující kritéria:

  • Zadejte text do uvozovaného řetězce a potom ho vložte do Select-String.
  • Uložte textový řetězec do proměnné a pak zadejte proměnnou jako hodnotu InputObject parametru.
  • Pokud je text uložen v souborech, pomocí parametru Path určete cestu k souborům.

Ve výchozím nastavení Select-String interpretuje hodnotu parametru Pattern jako regulární výraz. (Další informace najdete v části about_Regular_Expressions. K přepsání porovnávání regulárních výrazů můžete použít parametr SimpleMatch. Parametr SimpleMatch vyhledá instance hodnoty parametru Pattern ve vstupu.

Výchozí výstup Select-String je objekt MatchInfo, který obsahuje podrobné informace o shodách. Informace v objektu jsou užitečné při hledání textu v souborech, protože MatchInfo objekty mají vlastnosti, jako je Název souboru a řádek. Pokud vstup ze souboru není, hodnota těchto parametrů je InputStream.

Pokud nepotřebujete informace v objektu MatchInfo, použijte parametr Quiet. Parametr Quiet vrátí logickou hodnotu (True nebo False), která označuje, jestli našla shodu, a ne MatchInfo objektu.

Při porovnávání frází Select-String používá aktuální jazykovou verzi nastavenou pro systém. Pokud chcete najít aktuální jazykovou verzi, použijte rutinu Get-Culture .

Chcete-li najít vlastnosti MatchInfo objektu, zadejte následující příkaz:

Select-String -Path test.txt -Pattern 'test' | Get-Member | Format-List -Property *