Vybere objekty z kolekce na základě hodnot jejich vlastností.
- Syntaxe
- Popis
- Příklady
- Příklad 1: Získat zastavené služby
- Příklad 2: Získání procesů na základě pracovní sady
- Příklad 3: Získat procesy na základě názvu procesu
- Příklad 4: Použití formátu příkazu pro porovnání
- Příklad 5: Získání příkazů na základě vlastností
- Příklad 6: Použití více podmínek
- Parametry
- Inputs
- Výstupy
- Poznámky
Syntaxe
Where-Object <String> <Object>]
Where-Object <ScriptBlock>
Where-Object <String> <Object>] -Match
Where-Object <String> <Object>] -CEQ
Where-Object <String> <Object>] -NE
Where-Object <String> <Object>] -CNE
Where-Object <String> <Object>] -GT
Where-Object <String> <Object>] -CGT
Where-Object <String> <Object>] -LT
Where-Object <String> <Object>] -CLT
Where-Object <String> <Object>] -GE
Where-Object <String> <Object>] -CGE
Where-Object <String> <Object>] -LE
Where-Object <String> <Object>] -CLE
Where-Object <String> <Object>] -Like
Where-Object <String> <Object>] -CLike
Where-Object <String> <Object>] -NotLike
Where-Object <String> <Object>] -CNotLike
Where-Object <String> <Object>] -CMatch
Where-Object <String> <Object>] -NotMatch
Where-Object <String> <Object>] -CNotMatch
Where-Object <String> <Object>] -Contains
Where-Object <String> <Object>] -CContains
Where-Object <String> <Object>] -NotContains
Where-Object <String> <Object>] -CNotContains
.
Where-Object <String> <Object>] -In
Where-Object <String> <Object>] -CIn
Where-Object <String> <Object>] -NotIn
Where-Object <String> <Object>] -CNotIn
Where-Object <String> <Object>] -Is
Where-Object <String> <Object>] -IsNot
Where-Object <String> -Not
Popis
Ccmdlet Where-Object
vybere z kolekce objektů, které jsou mu předány, objekty, které mají určité hodnoty vlastností. Pomocí rutiny Where-Object
můžete například vybrat soubory, které byly vytvořeny po určitém datu, události s určitým ID nebo počítače, které používají určitou verzi systému Windows.
Počínaje prostředím Windows PowerShell 3.0 existují dva různé způsoby konstrukce příkazu Where-Object
.
-
Scriptový blok. Pomocí bloku skriptu můžete zadat název vlastnosti, operátor porovnání,a hodnotu vlastnosti.
Where-Object
Vrátí všechny objekty, pro které je příkaz bloku skriptů istrue.Například následující příkaz získá procesy ve třídě priority Normal, tj. procesy, u kterých se hodnota vlastnosti PriorityClass rovná Normal.
Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}
Ve formátu bloku skriptů jsou platné všechny operátory porovnání prostředí PowerShell. Další informace o operátorech porovnávání naleznete v částiOperátory porovnávání.
-
Příkaz porovnávání. Můžete také napsat porovnávací příkaz, který je mnohem podobnějšípřirozenému jazyku. Příkazy porovnání byly zavedeny v prostředí Windows PowerShell 3.0.
Například následující příkazy získají také procesy, které mají třídu priority Normal. Tyto příkazy jsou rovnocenné a lze je používat zaměnitelně.
Get-Process | Where-Object -Property PriorityClass -eq -Value "Normal"
Get-Process | Where-Object PriorityClass -eq "Normal"
Počínaje prostředím Windows PowerShell 3.0 přidává
Where-Object
operátory porovnání jako parametry v příkazuWhere-Object
. Pokud není uvedeno jinak, nerozlišují se u všech operátorů velká a malá písmena. Před verzí WindowsPowerShell 3.0 bylo možné operátory porovnávání v jazyce PowerShell používat pouze v blocích skriptů.
Pokud zadáte příkazu Where-Object
jednu vlastnost, bude hodnota vlastnosti považována za logický výraz. Pokud hodnota Length není nulová, výraz se vyhodnotí jakoTrue. Například: ('hi', '', 'there') | Where-Object Length
Předchozí příklad je funkčně ekvivalentní:
('hi', '', 'there') | Where-Object Length -GT 0
('hi', '', 'there') | Where-Object {$_.Length -gt 0}
Příklady
Příklad 1: Získat zastavené služby
Těmito příkazy získáte seznam všech služeb, které jsou aktuálně zastaveny. Automatická proměnná $_
představuje každý objekt, který je předán rutině Where-Object
.
První příkaz používá formát bloku skriptu, druhý příkaz používá formát porovnávacího příkazu. Příkazy jsou rovnocenné a lze je používat 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 vypisují procesy, které mají pracovní sadu větší než 250 megabajtů (KB). Syntaxe bloku skriptů a příkazu je ekvivalentní a lze ji použít zaměnitelně.
Get-Process | Where-Object {$_.WorkingSet -GT 250MB}Get-Process | Where-Object WorkingSet -GT (250MB)
Příklad 3: Získat procesy na základě názvu procesu
Tyto příkazy získají procesy, které mají hodnotu vlastnosti ProcessName začínající písmenem p
. Operátor Match umožňuje používat shody regulárních výrazů.
Syntaxe bloku skriptů a příkazu je ekvivalentní a lze ji používat 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 pro porovnání
Tento příklad ukazuje, jak použít nový formát příkazu pro porovnání rutiny Where-Object
.
První příkaz používá formát porovnávacího příkazu, v tomto příkazu nejsou použity žádné aliasy a všechny parametry obsahují název parametru.
Druhý příkaz představuje přirozenější použití formátu porovnávacího příkazu. Alias where
je nahrazen názvem rutiny Where-Object
a všechny nepovinné názvy parametrů jsou vynechány.
Get-Process | Where-Object -Property Handles -GE -Value 1000Get-Process | where Handles -GE 1000
Příklad 5: Získání příkazů na základě vlastností
Tento příklad ukazuje, jak napsat příkazy, které vracejí položky, které jsou pravdivé nebo nepravdivé nebo mají libovolnou hodnotu zadané vlastnosti. Každý příklad ukazuje jak formát bloku skriptu, tak formát příkazu pro 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 OutputTypeGet-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 PSIsContainerGet-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á jiné než základní moduly, které podporují funkci aktualizovatelné nápovědy. Příkaz používá parametrListAvailable rutiny Get-Module
k získání všech modulů v počítači. Operátor Apipeline (|
) odešle moduly rutině Where-Object
, která získá moduly, jejichž názvy nezačínají slovy Microsoft nebo PS a mají hodnotu vlastnosti HelpInfoURI, která prostředí PowerShell říká, kde má najít aktualizované soubory nápovědy pro daný modul. Příkazy porovnání jsou propojeny logickým operátorem And.
Příklad používá formát bloku příkazů skriptu. Logické operátory, jako jsou And a Or, jsouplatné pouze v blocích skriptů. Nelze je použít ve formátu porovnávacích příkazů příkazuWhere-Object
.
- Další informace o logických operátorech prostředí PowerShell najdete v části about_Logical_Operators.
- Další informace o funkci aktualizovatelné nápovědy najdete v části about_Updatable_Help.
Parametry
Určuje, že tato rutina získá objekty z kolekce, pokud hodnota vlastnosti objektu přesně odpovídá zadané hodnotě. Při této operaci se rozlišují malá a velká písmena.
Například: Get-Process | where ProcessName -CContains "svchost"
CContains odkazuje na kolekci hodnot a je true, pokud kolekce obsahuje položku, která přesně odpovídá zadané hodnotě. Pokud je vstupem jeden objekt, prostředí PowerShell jej převede na kolekci jednoho objektu.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0. V případě, že je vstupem jeden objekt, prostředí PowerShell jej převede na kolekci jednoho objektu.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti stejná jako zadaná hodnota.Při této operaci se rozlišují malá a velká písmena.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti větší nebo rovna zadané hodnotě. Při této operaci se rozlišují malá a velká písmena.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti větší než zadaná hodnota.Při této operaci se rozlišují malá a velká písmena.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud hodnota vlastnosti obsahuje zadanou hodnotu. Při této operaci se rozlišují malá a velká písmena.
Například: Get-Process | where -Value "svchost" -CIn ProcessName
CIn se podobá příkazu CContains s tím rozdílem, že pozice vlastnosti a hodnoty jsou obrácené. Například následující příkazy jsou oba pravdivé.
"abc", "def" -CContains "abc"
"abc" -CIn "abc", "def"
Tento parametr byl zaveden v prostředí Prostředí Windows PowerShell 3.0.
Tento parametr byl zaveden v prostředí Prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti menší nebo rovna zadanéhodnotě. Při této operaci se rozlišují malá a velká písmena.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud hodnota vlastnosti odpovídá hodnotě, která obsahuje zástupné znaky. Při této operaci se rozlišují malá a velká písmena.
Například: Get-Process | where ProcessName -CLike "*host"
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti menší než zadaná hodnota. Při této operaci se rozlišují malá a velká písmena.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud hodnota vlastnosti odpovídá zadanému regulárnímu výrazu. Při této operaci se rozlišují malá a velká písmena. Pokud je vstupem skalární hodnota, je odpovídající hodnota uloženav $Matches
automatické proměnné.
Například: Get-Process | where ProcessName -CMatch "Shell"
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti jiná než zadaná hodnota.Při této operaci se rozlišují malá a velká písmena.
Tento parametr byl zaveden ve verzi 3.0 prostředí Windows PowerShell.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tato rutina dostane objekty, pokud hodnota vlastnosti objektu není přesnou shodou pro zadanou hodnotu. Při této operaci se rozlišují malá a velká písmena.
Například: Get-Process | where ProcessName -CNotContains "svchost"
NotContains a CNotContains se vztahují ke kolekci hodnot a jsou pravdivé, pokud kolekce neobsahuje žádné položky, které jsou přesnou shodou pro zadanou hodnotu. Pokud je vstupní údajjediný objekt, prostředí PowerShell jej převede na kolekci jednoho objektu.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tato rutina dostane objekty, pokud hodnota vlastnosti není přesnou shodou zadané hodnoty. Při této operaci se rozlišují malá a velká písmena.
Například: Get-Process | where -Value "svchost" -CNotIn -Property ProcessName
Operátory NotIn a CNotIn se podobají operátorům NotContains a CNotContains s 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: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud hodnota vlastnosti neodpovídá hodnotě, která obsahujewildcard znaky. Při této operaci se rozlišují malá a velká písmena.
Například: Get-Process | where ProcessName -CNotLike "*host"
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tato rutina dostane objekty, pokud hodnota vlastnosti neodpovídá zadanému regulárnímu výrazu. Tato operace rozlišuje malá a velká písmena. Pokud je vstup skalární, je odpovídající hodnota uloženav $Matches
automatické proměnné.
Například: Get-Process | where ProcessName -CNotMatch "Shell"
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tato rutina získá objekty, pokud je některá položka v hodnotě vlastnosti objektu přesnou shodou se zadanou hodnotou.
Například: Get-Process | where ProcessName -Contains "Svchost"
Pokud hodnota vlastnosti obsahuje jeden objekt, PowerShell ji převede na kolekci jednoho objektu.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Aliasy: | ICobsahuje |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti stejná jako zadaná hodnota.
Tento parametr byl zaveden ve verzi 3.0 prostředí Windows PowerShell.
Typ: | PřepínačParametr |
Aliasy: | IEQ |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje blok skriptu, který se použije pro filtrování objektů. Uzavřete blok skriptů do závorek({}
).
Název parametru, FilterScript, je nepovinný.
Typ: | ScriptBlock |
Pozice: | 0 |
Výchozí hodnota: | None |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti větší nebo rovna zadané hodnotě.
Tento parametr byl zaveden ve verzi 3.0 prostředí Windows PowerShell.
Typ: | PřepínačParametr |
Aliasy: | IGE |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti větší než zadaná hodnota.
Tento parametr byl zaveden ve verzi 3.0 prostředí Windows PowerShell.
Typ: | PřepínačParametr |
Aliasy: | IGT |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud hodnota vlastnosti odpovídá některé ze zadaných hodnot.Například:
Get-Process | where -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"
Pokud je hodnotou parametru Value jeden objekt, prostředí PowerShell ji převede na kolekci jednoho objektu.
Pokud je hodnotou vlastnosti objektu pole, prostředí PowerShell použije k určení shody referenční rovnost. Where-Object
Vrátí objekt pouze v případě, že hodnota parametru Property a libovolná hodnota Value jsou stejnou instancí objektu.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | Parametr přepínače |
Aliasy: | IIn |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup z potrubí: | Ne |
Přijmout zástupné znaky: | Ne |
Určuje objekty, které mají být filtrovány. Objekty můžete také směrovat do roury Where-Object
.
Při použití parametru InputObject s Where-Object
se místo směrování výsledků příkazu do rouryWhere-Object
s hodnotou InputObject zachází jako s jedním objektem. To platí i v případě, že hodnota je kolekce, která je výsledkem příkazu, například -InputObject (Get-Process)
. ProtožeInputObject nemůže vracet jednotlivé vlastnosti z pole nebo kolekce objektů, doporučujeme, abyste, pokud používáte Where-Object
k filtrování kolekce objektů pro ty objekty, které mají specifické hodnoty v definovaných vlastnostech, použili Where-Object
v potrubí, jak je uvedeno vpříkladech v tomto tématu.
Typ: | PSObjekt |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijmout vstup do potrubí: | True |
Accept wildcard characters: | False |
Určuje, že tento cmdlet získá objekty, pokud je hodnota vlastnosti instancí zadaného .NETtype. Název typu uzavřete do hranatých závorek.
Například Get-Process | where StartTime -Is
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Tento parametr se používá v prostředí Windows PowerShell.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tato rutina dostane objekty, pokud hodnota vlastnosti není instancí uvedené.NET typu.
Například Get-Process | where StartTime -IsNot
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.Get-Process | where StartTime -IsNot
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti menší nebo rovna zadanéhodnotě.
Tento parametr byl zaveden ve verzi 3.0 prostředí Windows PowerShell.
Typ: | PřepínačParametr |
Aliasy: | ILE |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud hodnota vlastnosti odpovídá hodnotě, která obsahuje zástupné znaky.
Například: Get-Process | where ProcessName -Like "*host"
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Aliasy: | ILike |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti menší než zadaná hodnota.
Tento parametr byl zaveden ve verzi 3.0 prostředí Windows PowerShell.
Typ: | PřepínačParametr |
Aliasy: | ILT |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento rutina dostane objekty, pokud hodnota vlastnosti odpovídá zadanému regulárnímu výrazu. Je-li vstupem skalární hodnota, uloží se odpovídající hodnota do automatické proměnné $Matches
.
Například: Get-Process | where ProcessName -Match "shell"
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | SwitchParameter |
Aliasy: | IMatch |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímání vstupů z potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud je hodnota vlastnosti jiná než zadaná hodnota.
Tento parametr byl zaveden ve verzi 3.0 prostředí Windows PowerShell.
Typ: | PřepínačParametr |
Aliasy: | INE |
Pozice: | Název |
Výchozí hodnota: | Žádná |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud vlastnost neexistuje nebo má hodnotu null nebofalse.
Například: Get-Service | where -Not "DependentServices"
Tento parametr byl zaveden v prostředí Windows PowerShell 6.1.
Typ: | PřepínačParametr |
Pozice: | Název |
Výchozí hodnota: | Nulová |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tato rutina dostane objekty, pokud žádná z položek v hodnotě vlastnosti není přesnou shodou pro zadanou hodnotu.
Například: Get-Process | where ProcessName -NotContains "Svchost"
NotContains odkazuje na kolekci hodnot a je true, pokud kolekce neobsahuje žádné položky, které by byly přesnou shodou pro zadanou hodnotu. Pokud je vstupem jeden objekt, prostředí PowerShell jej převede na kolekci jednoho objektu.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0. V případě, že je vstupem jeden objekt, prostředí PowerShell jej převede na kolekci jednoho objektu.
Typ: | PřepínačParametr |
Aliasy: | INotContains |
Pozice: | Nejmenuje se |
Výchozí hodnota: | Nic |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tato rutina dostane objekty, pokud hodnota vlastnosti není přesnou shodou žádné ze zadaných hodnot.
Například: Get-Process | where -Value "svchost" -NotIn -Property ProcessName
Je-li hodnota Value jediný objekt, prostředí PowerShell ji převede na kolekci jednoho objektu.
Je-li hodnota vlastnosti objektu pole, prostředí PowerShell použije k určení shody referenční rovnost. Where-Object
Vrátí objekt pouze v případě, že hodnota Property a libovolná hodnotaValue nejsou stejnou instancí objektu.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
.
Typ: | PřepínačParametr |
Aliasy: | INotIn |
Pozice: | Nazván |
Výchozí hodnota: | Nic |
Přijímá vstup do potrubí: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud hodnota vlastnosti neodpovídá hodnotě, která obsahujewildcard znaky.
Například: Get-Process | where ProcessName -NotLike "*host"
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Aliasy: | INotLike |
Pozice: | Named |
Výchozí hodnota: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Určuje, že tento cmdlet dostane objekty, pokud hodnota vlastnosti neodpovídá zadanému regulačnímu výrazu. Je-li vstupem skalární hodnota, uloží se odpovídající hodnota do $Matches
automatické proměnné.
Například: Get-Process | where ProcessName -NotMatch "PowerShell"
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | PřepínačParametr |
Aliasy: | INotMatch |
Pozice: | Název |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | Ne |
Přijímá zástupné znaky: | Ne |
Určuje název vlastnosti objektu. Název parametru, Vlastnost, je nepovinný.
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | Řetězec |
Pozice: | 0 |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | False |
Určuje hodnotu vlastnosti. Název parametru Value je nepovinný. Tento parametr akceptuje zástupné znaky při použití s následujícími parametry porovnání:
- CLike
- CNotLike
- Like
- NotLike
Tento parametr byl zaveden v prostředí Windows PowerShell 3.0.
Typ: | Objekt |
Pozice: | 1 |
Výchozí hodnota: | Jedna |
Přijímá vstup z potrubí: | False |
Accept wildcard characters: | True |
Inputs
PSObject
Do této rutiny můžete připojit objekty.
Výstupy
Objekt
Tato rutina vrací vybrané položky ze sady vstupních objektů.
Poznámky
Od prostředí Windows PowerShell 4.0 byly přidány metody Where
a ForEach
pro použití s kolekcemi.
O těchto nových metodách si můžete přečíst více zde about_arrays
- Compare-Object
- ForEach-Object
- Group-Object
- Measure-Object
- New-Object
- Select-Object
- Sort-Object
- Tee-Object