Where-Object
Vybere objekty z kolekce na základě hodnot jejich vlastností.
Syntaxe
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-EQ]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-FilterScript] <ScriptBlock>
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-LE]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CGE]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CLE]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CIn]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-GE]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CLike]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-NotLike]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CNotLike]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-Match]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CMatch]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-NotMatch]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CNotMatch]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-Contains]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CContains]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-NotContains]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CNotContains]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-In]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-Like]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-NotIn]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CNotIn]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-Is]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-IsNot]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CEQ]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-NE]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CNE]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-GT]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CGT]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-LT]
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
[-CLT]
[<CommonParameters>]
Description
Rutina Where-Object
vybere objekty, které mají konkrétní hodnoty vlastností z kolekce objektů, které jsou do ní předány.
Pomocí rutiny Where-Object
můžete například vybrat soubory vytvořené po určitém datu, události s určitým ID nebo počítači, které používají určitou verzi Windows.
Počínaje windows PowerShellem 3.0 existují dva různé způsoby vytvoření příkazu Where-Object
.
blok skriptu. Blok skriptu můžete použít k určení názvu vlastnosti, relačního operátoru a hodnoty vlastnosti.
Where-Object
vrátí všechny objekty, pro které je příkaz bloku skriptu pravdivý.Například následující příkaz získá procesy ve třídě Priority Normal, to znamená procesy, kde hodnota PriorityClass vlastnost rovná Normal.
Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}
Všechny relační operátory PowerShellu jsou platné ve formátu bloku skriptu. Další informace o relačních operátorech naleznete v tématu about_Comparison_Operators.
Příkaz Porovnání. Můžete také napsat porovnávací příkaz, který je mnohem více podobný přirozenému jazyku. Příkazy porovnání byly zavedeny ve Windows PowerShellu 3.0.
Například následující příkazy také získají procesy, které mají prioritu třídy Normal. Tyto příkazy jsou ekvivalentní a dají se použít zaměnitelně.
Get-Process | Where-Object -Property PriorityClass -eq -Value "Normal"
Get-Process | Where-Object PriorityClass -eq "Normal"
Počínaje windows PowerShellem 3.0 Where-Object přidává relační operátory jako parametry v příkazu Where-Object. Pokud není zadáno, nerozlišují se všechny operátory malá a velká písmena. Před Windows PowerShellem 3.0 je možné použít relační operátory v jazyce PowerShell pouze v blocích skriptu.
Příklady
Příklad 1: Získání zastavených služeb
Tyto příkazy získají seznam všech aktuálně zastavených služeb.
Automatická proměnná $_
představuje každý objekt předaný rutině Where-Object
.
První příkaz používá formát bloku skriptu, druhý příkaz používá formát příkazu porovnání.
Příkazy jsou ekvivalentní a dají se použít zaměnitelně.
Get-Service | Where-Object {$_.Status -eq "Stopped"}
Get-Service | where Status -eq "Stopped"
Příklad 2: Získání procesů na základě pracovní sady
Tyto příkazy uvádějí procesy, které mají pracovní sadu větší než 25 000 kilobajtů (KB). Protože hodnota WorkingSet vlastnost je uložena v bajtech, hodnota 25 000 se vynásobí hodnotou 1 024.
Syntaxe scriptblock a příkazu jsou ekvivalentní a lze ji použít zaměnitelně.
Get-Process | Where-Object {$_.WorkingSet -GT 25000*1024}
Get-Process | Where-Object WorkingSet -GT (25000*1024)
Příklad 3: Získání procesů na základě názvu procesu
Tyto příkazy získají procesy, které mají ProcessName hodnotu vlastnosti, která začíná písmenem p. Operátor Match umožňuje používat shody regulárních výrazů.
Syntaxe scriptblock a příkazu jsou ekvivalentní a lze ji použít zaměnitelně.
Get-Process | Where-Object {$_.ProcessName -Match "^p.*"}
Get-Process | Where-Object ProcessName -Match "^p.*"
Příklad 4: Použití formátu příkazu porovnání
Tento příklad ukazuje, jak používat nový formát příkazu porovnání rutiny Where-Object
.
První příkaz používá formát příkazu porovnání. V tomto příkazu se nepoužívají žádné aliasy a všechny parametry zahrnují název parametru.
Druhým příkazem je přirozenější použití formátu příkazu porovnání.
, kde je alias nahrazen názvem rutiny Where-Object
a všechny volitelné názvy parametrů jsou vynechány.
Get-Process | Where-Object -Property Handles -GE -Value 1000
Get-Process | where Handles -GE 1000
Příklad 5: Získání příkazů na základě vlastností
Tento příklad ukazuje, jak psát příkazy, které vracejí položky, které mají hodnotu true nebo false nebo mají libovolnou hodnotu pro zadanou vlastnost. Každý příklad ukazuje formáty bloku skriptu i příkazu porovnání.
# Use Where-Object to get commands that have any value for the OutputType property of the command.
# This omits commands that do not have an OutputType property and those that have an OutputType property, but no property value.
Get-Command | where OutputType
Get-Command | where {$_.OutputType}
# Use Where-Object to get objects that are containers.
# This gets objects that have the **PSIsContainer** property with a value of $True and excludes all others.
Get-ChildItem | where PSIsContainer
Get-ChildItem | where {$_.PSIsContainer}
# Finally, use the Not operator (!) to get objects that are not containers.
# This gets objects that do have the **PSIsContainer** property and those that have a value of $False for the **PSIsContainer** property.
Get-ChildItem | where {!$_.PSIsContainer}
# You cannot use the Not operator (!) in the comparison statement format of the command.
Get-ChildItem | where PSIsContainer -eq $False
Příklad 6: Použití více podmínek
Get-Module -ListAvailable | where {($_.Name -notlike "Microsoft*" -and $_.Name -notlike "PS*") -and $_.HelpInfoUri}
Tento příklad ukazuje, jak vytvořit příkaz Where-Object
s více podmínkami.
Tento příkaz získá nejádrový modul, který podporuje funkci Aktualizovatelná nápověda.
Příkaz používá parametr ListAvailable rutiny Get-Module
k získání všech modulů v počítači.
Operátor kanálu (|) odešle moduly do rutiny Where-Object
, která získá moduly, jejichž názvy nezačínají Microsoftem nebo PS, a má hodnotu pro vlastnost HelpInfoURI, která powershellu říká, kde najít aktualizované soubory nápovědy pro modul.
Příkazy porovnání jsou propojeny a logickým operátorem.
Příklad používá formát příkazu bloku skriptu.
Logické operátory, jako jsou a a nebo, jsou platné pouze v blocích skriptu.
Nemůžete je použít ve formátu příkazu porovnání příkazu Where-Object
.
- Další informace o logických operátorech PowerShellu najdete v tématu about_Logical_Operators.
- Další informace o funkci Aktualizovatelná nápověda naleznete v tématu about_Updatable_Help.
Parametry
-CContains
Označuje, že tato rutina získá objekty z kolekce, pokud hodnota vlastnosti objektu je přesná shoda pro zadanou hodnotu. Tato operace rozlišují malá a velká písmena.
Příklad: Get-Process | where ProcessName -CContains "svchost"
CContains odkazuje na kolekci hodnot a je true, pokud kolekce obsahuje položku, která je přesná shoda pro zadanou hodnotu. Pokud je vstup jedním objektem, PowerShell ho převede na kolekci jednoho objektu.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CEQ
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti stejná jako zadaná hodnota. Tato operace rozlišují malá a velká písmena.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CGE
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti větší nebo rovna zadané hodnotě. Tato operace rozlišují malá a velká písmena.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CGT
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti větší než zadaná hodnota. Tato operace rozlišují malá a velká písmena.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CIn
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti obsahuje zadanou hodnotu. Tato operace rozlišují malá a velká písmena.
Příklad: Get-Process | where -Value "svchost" -CIn ProcessName
CIn se podobá CContainss tím rozdílem, že pozice vlastností a hodnot jsou obráceny. Například následující příkazy jsou pravdivé.
"abc", "def" -CContains "abc"
"abc" -CIn "abc", "def"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CLE
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti menší nebo rovna zadané hodnotě. Tato operace rozlišují malá a velká písmena.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CLike
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti odpovídá hodnotě, která obsahuje zástupné znaky. Tato operace rozlišují malá a velká písmena.
Příklad: Get-Process | where ProcessName -CLike "*host"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CLT
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti menší než zadaná hodnota. Tato operace rozlišují malá a velká písmena.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CMatch
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti odpovídá zadanému regulárnímu výrazu.
Tato operace rozlišují malá a velká písmena.
Pokud je vstup skalární, odpovídající hodnota se uloží do $Matches
automatické proměnné.
Příklad: Get-Process | where ProcessName -CMatch "Shell"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CNE
Označuje, že tato rutina získá objekty, pokud se hodnota vlastnosti liší od zadané hodnoty. Tato operace rozlišují malá a velká písmena.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CNotContains
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti objektu není přesná shoda pro zadanou hodnotu. Tato operace rozlišují malá a velká písmena.
Příklad: Get-Process | where ProcessName -CNotContains "svchost"
"NotContains" a "CNotContains odkazují na kolekci hodnot a jsou pravdivé, pokud kolekce neobsahuje žádné položky, které jsou přesné shody pro zadanou hodnotu. Pokud je vstup jedním objektem, PowerShell ho převede na kolekci jednoho objektu.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CNotIn
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti není přesná shoda pro zadanou hodnotu. Tato operace rozlišují malá a velká písmena.
Příklad: Get-Process | where -Value "svchost" -CNotIn -Property ProcessName
Operátory CNotIn a CNotIn se podobají NotContains a CNotContainss tím rozdílem, že pozice vlastností a hodnot jsou obrácené. Například následující příkazy jsou pravdivé.
"abc", "def" -CNotContains "Abc"
"abc" -CNotIn "Abc", "def"
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CNotLike
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti neodpovídá hodnotě, která obsahuje zástupné znaky. Tato operace rozlišují malá a velká písmena.
Příklad: Get-Process | where ProcessName -CNotLike "*host"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CNotMatch
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti neodpovídá zadanému regulárnímu výrazu.
Tato operace rozlišují malá a velká písmena.
Pokud je vstup skalární, odpovídající hodnota se uloží do $Matches
automatické proměnné.
Příklad: Get-Process | where ProcessName -CNotMatch "Shell"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Contains
Označuje, že tato rutina získá objekty, pokud jakákoli položka v hodnotě vlastnosti objektu je přesná shoda pro zadanou hodnotu.
Příklad: Get-Process | where ProcessName -Contains "Svchost"
Pokud hodnota vlastnosti obsahuje jeden objekt, PowerShell ho převede na kolekci jednoho objektu.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | IContains |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-EQ
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti stejná jako zadaná hodnota.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | IEQ |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-FilterScript
Určuje blok skriptu, který se používá k filtrování objektů. Uzavřete blok skriptu do složených závorek ({}).
Název parametru FilterScriptje volitelný.
Typ: | ScriptBlock |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-GE
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti větší nebo rovna zadané hodnotě.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | IGE |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-GT
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti větší než zadaná hodnota.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | IGT |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-In
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti odpovídá některé ze zadaných hodnot.
Příklad: Get-Process | where -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"
Pokud je hodnota parametru Value jediný objekt, PowerShell ho převede na kolekci jednoho objektu.
Pokud je hodnota vlastnosti objektu pole, PowerShell použije k určení shody rovnost odkazů.
Where-Object
vrátí objekt pouze v případě, že hodnota parametru Vlastnost a jakákoli hodnota Hodnota jsou stejnou instancí objektu.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | IIn |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-InputObject
Určuje objekty, které se mají filtrovat.
Objekty můžete také pipetovat do Where-Object
.
Pokud použijete InputObject parametr s Where-Object
, místo piping command results to Where-Object
, InputObject hodnota je považována za jeden objekt.
To platí i v případě, že hodnota je kolekce, která je výsledkem příkazu, například -InputObject (Get-Process)
.
Vzhledem k tomu, že InputObject nemůže vracet jednotlivé vlastnosti z pole nebo kolekce objektů, doporučujeme použít Where-Object
k filtrování kolekce objektů pro tyto objekty, které mají určité hodnoty v definovaných vlastnostech, použijete v kanálu Where-Object
, jak je znázorněno v příkladech v tomto tématu.
Typ: | PSObject |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Is
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti instance zadaného typu rozhraní .NET Framework. Uzavřete název typu do hranatých závorek.
Například Get-Process | where StartTime -Is [DateTime]
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-IsNot
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti není instancí zadaného typu rozhraní .NET Framework.
Například Get-Process | where StartTime -IsNot [DateTime]
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-LE
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti menší nebo rovna zadané hodnotě.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | ILE |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Like
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti odpovídá hodnotě, která obsahuje zástupné znaky.
Příklad: Get-Process | where ProcessName -Like "*host"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | ILike |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-LT
Označuje, že tato rutina získá objekty, pokud je hodnota vlastnosti menší než zadaná hodnota.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | ILT |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Match
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti odpovídá zadanému regulárnímu výrazu.
Pokud je vstup skalární, odpovídající hodnota se uloží do $Matches
automatické proměnné.
Příklad: Get-Process | where ProcessName -Match "shell"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | IMatch |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-NE
Označuje, že tato rutina získá objekty, pokud se hodnota vlastnosti liší od zadané hodnoty.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | INE |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-NotContains
Označuje, že tato rutina získá objekty, pokud žádná z položek v hodnotě vlastnosti není přesná shoda pro zadanou hodnotu.
Příklad: Get-Process | where ProcessName -NotContains "Svchost"
NotContains odkazuje na kolekci hodnot a je true, pokud kolekce neobsahuje žádné položky, které jsou přesné shody pro zadanou hodnotu. Pokud je vstup jedním objektem, PowerShell ho převede na kolekci jednoho objektu.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | INotContains |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-NotIn
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti není přesná shoda pro žádnou ze zadaných hodnot.
Příklad: Get-Process | where -Value "svchost" -NotIn -Property ProcessName
Pokud je hodnota Hodnota jeden objekt, PowerShell ho převede na kolekci jednoho objektu.
Pokud je hodnota vlastnosti objektu pole, PowerShell použije k určení shody rovnost odkazů.
Where-Object
vrátí objekt pouze v případě, že hodnota vlastnosti a jakákoli hodnota Hodnota nejsou stejnou instancí objektu.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | INotIn |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-NotLike
Označuje, že tato rutina získá objekty, pokud hodnota vlastnosti neodpovídá hodnotě, která obsahuje zástupné znaky.
Příklad: Get-Process | where ProcessName -NotLike "*host"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | INotLike |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-NotMatch
Označuje, že tato rutina získá objekty, když hodnota vlastnosti neodpovídá zadanému regulárnímu výrazu.
Pokud je vstup skalární, odpovídající hodnota se uloží do $Matches
automatické proměnné.
Příklad: Get-Process | where ProcessName -NotMatch "PowerShell"
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | SwitchParameter |
Aliasy: | INotMatch |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Property
Určuje název vlastnosti objektu.
Název parametru Vlastnostje nepovinný.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | String |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Value
Určuje hodnotu vlastnosti. Název parametru Hodnotaje nepovinný. Tento parametr přijímá zástupné znaky při použití s následujícími parametry porovnání:
- CLike
- CNotLike
- like
- NotLike
Tento parametr byl představen ve Windows PowerShellu 3.0.
Typ: | Object |
Position: | 1 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
Vstupy
Objekty můžete připojit k této rutině.
Výstupy
Object
Tato rutina vrátí vybrané položky ze vstupní sady objektů.
Poznámky
- Počínaje windows PowerShellem 4.0 byly přidány metody
Where
aForEach
pro použití s kolekcemi.- Další informace o těchto nových metodách najdete about_arrays