次の方法で共有


Where-Object

プロパティの値に基づいて、コレクションからオブジェクトを選択します。

構文

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>]

説明

コマンドレットは Where-Object 、渡されるオブジェクトのコレクションから、特定のプロパティ値を持つオブジェクトを選択します。 たとえば、 コマンドレットを Where-Object 使用して、特定の日付以降に作成されたファイル、特定の ID を持つイベント、または特定のバージョンの Windows を使用するコンピューターを選択できます。

Windows PowerShell 3.0 以降では、2 つの異なる方法でコマンドをWhere-Object作成できます。

  • スクリプト ブロック。 スクリプト ブロックを使用すると、プロパティ名、比較演算子、プロパティ値を指定できます。 Where-Object は、スクリプト ブロック ステートメントが true であるすべてのオブジェクトを返します。

    たとえば、次のコマンドは、Normal 優先度クラスのプロセス、つまり PriorityClass プロパティの値が Normal であるプロセスを取得します。

    Get-Process | Where-Object {$_.PriorityClass -eq "Normal"}

    すべての PowerShell 比較演算子は、スクリプト ブロック形式で有効です。 比較演算子の詳細については、「 about_Comparison_Operators」を参照してください。

  • 比較ステートメント。 比較ステートメントを使用すると、自然言語のように記述することができます。 比較ステートメントは Windows PowerShell 3.0 で導入されました。

    たとえば、次のコマンドは、優先度クラスが Normal であるプロセスも取得します。 これらのコマンドは同等であり、置き換えて使用することができます。

    Get-Process | Where-Object -Property PriorityClass -eq -Value "Normal"

    Get-Process | Where-Object PriorityClass -eq "Normal"

    Windows PowerShell 3.0 以降、Where-Object は Where-Objectコマンドのパラメーターとして比較演算子を追加します。 すべての演算子は、特に指定しない限り、大文字と小文字を区別しません。 Windows PowerShell 3.0 より前では、PowerShell 言語の比較演算子はスクリプト ブロックでのみ使用できました。

例 1: 停止したサービスを取得する

これらのコマンドは、現在停止されているすべてのサービスの一覧を取得します。

自動変数は $_ 、コマンドレットに渡される各オブジェクトを Where-Object 表します。

最初のコマンドはスクリプト ブロック形式を使用し、2 番目のコマンドは比較ステートメント形式を使用します。

コマンドは等価であり、同じ意味で使用することができます。

Get-Service | Where-Object {$_.Status -eq "Stopped"}
Get-Service | where Status -eq "Stopped"

例 2: ワーキング セットに基づいてプロセスを取得する

これらのコマンドは、25,000 キロバイト (KB) を超えるワーキング セットを持つプロセスを一覧表示します。 WorkingSet プロパティの値はバイト単位で格納されるため、25,000 の値に 1,024 を乗算します。

scriptblock とステートメントの構文は同等であり、同じ意味で使用できます。

Get-Process | Where-Object {$_.WorkingSet -GT 25000*1024}
Get-Process | Where-Object WorkingSet -GT (25000*1024)

例 3: プロセス名に基づいてプロセスを取得する

これらのコマンドは、文字 p で始まる ProcessName プロパティ値を持つプロセスを取得します。 Match 演算子を使用すると、正規表現の一致を使用できます。

scriptblock とステートメントの構文は同等であり、同じ意味で使用できます。

Get-Process | Where-Object {$_.ProcessName -Match "^p.*"}
Get-Process | Where-Object ProcessName -Match "^p.*"

例 4: 比較ステートメントの形式を使用する

この例では、 コマンドレットの新しい比較ステートメント形式を使用する方法を Where-Object 示します。

最初のコマンドは、比較ステートメント形式を使用しています。 このコマンドでは、エイリアスは使用されず、すべてのパラメーターにパラメーター名が使用されています。

2 番目のコマンドは、比較コマンドの形式をより自然に使用しています。 ここで、エイリアスはコマンドレット名にWhere-Object置き換え、省略可能なすべてのパラメーター名は省略されます。

Get-Process | Where-Object -Property Handles -GE -Value 1000
Get-Process | where Handles -GE 1000

例 5: プロパティに基づいてコマンドを取得する

この例では、true または false の項目、または指定したプロパティの任意の値を持つ項目を返すコマンドを記述する方法を示します。 各例では、 コマンドのスクリプト ブロック形式と比較ステートメント形式の両方を示します。

# 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

例 6: 複数の条件を使用する

Get-Module -ListAvailable | where {($_.Name -notlike "Microsoft*" -and $_.Name -notlike "PS*") -and $_.HelpInfoUri}

この例では、複数の条件を持つコマンドを Where-Object 作成する方法を示します。

このコマンドは、更新可能なヘルプ機能をサポートしている非コア モジュールを取得します。 コマンドは、コマンドレットの ListAvailable パラメーターを Get-Module 使用して、コンピューター上のすべてのモジュールを取得します。 パイプライン演算子 (|) は、コマンドレットにモジュールを Where-Object 送信します。このコマンドレットは、名前が Microsoft または PS で始まり、 HelpInfoURI プロパティの値を持つモジュールを取得します。このプロパティは、モジュールの更新されたヘルプ ファイルを見つける場所を PowerShell に指示します。 比較ステートメントは And 論理演算子 によって接続されます。

この例は、スクリプト ブロックのコマンド形式を使用しています。 AndOr などの論理演算子は、スクリプト ブロックでのみ有効です。 コマンドの比較ステートメント形式 Where-Object では使用できません。

  • PowerShell 論理演算子の詳細については、「 about_Logical_Operators」を参照してください。
  • 更新可能なヘルプ機能の詳細については、「 about_Updatable_Help」を参照してください。

パラメーター

-CContains

オブジェクトのプロパティ値が指定した値と完全に一致する場合に、このコマンドレットがコレクションからオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

例: Get-Process | where ProcessName -CContains "svchost"

CContains は値のコレクションを参照し、指定した値と完全に一致する項目がコレクションに含まれている場合は true です。 入力が 1 つのオブジェクトの場合、PowerShell は入力を 1 つのオブジェクトのコレクションに変換します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CEQ

プロパティ値が指定した値と同じ場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CGE

プロパティ値が指定した値以上の場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CGT

プロパティ値が指定した値より大きい場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CIn

プロパティ値に指定した値が含まれている場合、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

例: Get-Process | where -Value "svchost" -CIn ProcessName

CIn はCContains に似ていますが、プロパティと値の位置が逆になっている点が除きます。 たとえば、次のステートメントはどちらも true です。

"abc", "def" -CContains "abc"

"abc" -CIn "abc", "def"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CLE

プロパティ値が指定した値以下の場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CLike

プロパティ値がワイルドカード文字を含む値と一致する場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

例: Get-Process | where ProcessName -CLike "*host"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CLT

プロパティ値が指定した値より小さい場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CMatch

プロパティ値が指定した正規表現と一致する場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。 入力がスカラーの場合、一致した値は自動変数に $Matches 保存されます。

例: Get-Process | where ProcessName -CMatch "Shell"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNE

プロパティ値が指定した値と異なる場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNotContains

オブジェクトのプロパティ値が指定した値と完全に一致しない場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

例: Get-Process | where ProcessName -CNotContains "svchost"

"NotContains" と "CNotContains" は値のコレクションを参照し、指定した値と完全に一致する項目がコレクションに含まれない場合、true になります。 入力が 1 つのオブジェクトの場合、PowerShell は入力を 1 つのオブジェクトのコレクションに変換します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNotIn

プロパティ値が指定した値と完全に一致しない場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

例: Get-Process | where -Value "svchost" -CNotIn -Property ProcessName

NotIn 演算子と CNotIn 演算子は、プロパティと値の位置が反転されることを除き、 NotContains および CNotContains に似ています。 たとえば、次のステートメントは true です。

"abc", "def" -CNotContains "Abc"

"abc" -CNotIn "Abc", "def"

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNotLike

プロパティ値がワイルドカード文字を含む値と一致しない場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。

例: Get-Process | where ProcessName -CNotLike "*host"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CNotMatch

プロパティ値が指定した正規表現と一致しない場合に、このコマンドレットがオブジェクトを取得することを示します。 この操作では大文字と小文字が区別されます。 入力がスカラーの場合、一致した値は自動変数に $Matches 保存されます。

例: Get-Process | where ProcessName -CNotMatch "Shell"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Contains

オブジェクトのプロパティ値内の項目が指定した値と完全に一致する場合に、このコマンドレットがオブジェクトを取得することを示します。

例: Get-Process | where ProcessName -Contains "Svchost"

プロパティ値に 1 つのオブジェクトが含まれている場合、PowerShell はそれを 1 つのオブジェクトのコレクションに変換します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:IContains
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-EQ

プロパティ値が指定した値と同じ場合に、このコマンドレットがオブジェクトを取得することを示します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:IEQ
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FilterScript

オブジェクトをフィルター処理するために使用するスクリプト ブロックを指定します。 スクリプト ブロックを中かっこ ( {} ) で囲みます。

パラメーター名 FilterScript は省略可能です。

Type:ScriptBlock
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-GE

プロパティ値が指定した値以上の場合に、このコマンドレットがオブジェクトを取得することを示します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:IGE
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-GT

プロパティ値が指定した値より大きい場合に、このコマンドレットがオブジェクトを取得することを示します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:IGT
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-In

プロパティ値が指定した値のいずれかに一致する場合に、このコマンドレットがオブジェクトを取得することを示します。

例: Get-Process | where -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"

Value パラメーターの値が 1 つのオブジェクトの場合、PowerShell はそれを 1 つのオブジェクトのコレクションに変換します。

オブジェクトのプロパティ値が配列の場合、PowerShell は参照の等価性を使用して一致を判断します。 Where-ObjectProperty パラメーターの値と Value の値がオブジェクトの同じインスタンスである場合にのみ、オブジェクトを返します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:IIn
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

フィルター処理されるオブジェクトを指定します。 オブジェクトを に Where-Objectパイプすることもできます。

コマンドの結果を にパイプするのではなく、 で InputObject パラメーター Where-ObjectWhere-Object使用すると、 InputObject 値は 1 つのオブジェクトとして扱われます。 これは、値が コマンドの結果であるコレクションである場合でも当てはまります (例: -InputObject (Get-Process))。 InputObject はオブジェクトの配列またはコレクションから個々のプロパティを返すことができないので、 を使用Where-Objectして、定義されたプロパティに特定の値を持つオブジェクトのオブジェクトのコレクションをフィルター処理する場合は、このトピックの例に示すようにパイプラインで を使用Where-Objectすることをお勧めします。

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Is

プロパティ値が指定した.NET Framework型のインスタンスである場合、このコマンドレットがオブジェクトを取得することを示します。 型名を角かっこで囲みます。

たとえば、Get-Process | where StartTime -Is [DateTime] のように指定します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-IsNot

プロパティ値が指定した.NET Framework型のインスタンスでない場合に、このコマンドレットがオブジェクトを取得することを示します。

たとえば、Get-Process | where StartTime -IsNot [DateTime] のように指定します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-LE

プロパティ値が指定した値以下の場合に、このコマンドレットがオブジェクトを取得することを示します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:ILE
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Like

プロパティ値がワイルドカード文字を含む値と一致する場合に、このコマンドレットがオブジェクトを取得することを示します。

例: Get-Process | where ProcessName -Like "*host"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:ILike
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-LT

プロパティ値が指定した値より小さい場合に、このコマンドレットがオブジェクトを取得することを示します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:ILT
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Match

プロパティ値が指定した正規表現と一致する場合に、このコマンドレットがオブジェクトを取得することを示します。 入力がスカラーの場合、一致した値は自動変数に $Matches 保存されます。

例: Get-Process | where ProcessName -Match "shell"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:IMatch
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NE

プロパティ値が指定した値と異なる場合に、このコマンドレットがオブジェクトを取得することを示します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:INE
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotContains

プロパティ値の項目が指定した値と完全に一致しない場合に、このコマンドレットがオブジェクトを取得することを示します。

例: Get-Process | where ProcessName -NotContains "Svchost"

NotContains は値のコレクションを参照し、指定した値と完全に一致する項目がコレクションに含まれていない場合は true です。 入力が 1 つのオブジェクトの場合、PowerShell は入力を 1 つのオブジェクトのコレクションに変換します。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:INotContains
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotIn

プロパティ値が指定した値のいずれにも完全に一致しない場合に、このコマンドレットがオブジェクトを取得することを示します。

例: Get-Process | where -Value "svchost" -NotIn -Property ProcessName

Value の値が 1 つのオブジェクトの場合、PowerShell は 1 つのオブジェクトのコレクションに変換します。

オブジェクトのプロパティ値が配列の場合、PowerShell は参照の等価性を使用して一致を判断します。 Where-ObjectProperty の値と Value の値がオブジェクトの同じインスタンスでない場合にのみ、オブジェクトが返されます。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:INotIn
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotLike

プロパティ値がワイルドカード文字を含む値と一致しない場合に、このコマンドレットがオブジェクトを取得することを示します。

例: Get-Process | where ProcessName -NotLike "*host"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:INotLike
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NotMatch

プロパティ値が指定した正規表現と一致しない場合に、このコマンドレットがオブジェクトを取得することを示します。 入力がスカラーの場合、一致した値は自動変数に $Matches 保存されます。

例: Get-Process | where ProcessName -NotMatch "PowerShell"

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:SwitchParameter
Aliases:INotMatch
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Property

オブジェクトのプロパティの名前を指定します。

パラメーター名 Property は省略可能です。

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Value

プロパティ値を指定します。 パラメーター名 Value は省略可能です。 このパラメーターは、次の比較パラメーターで使用する場合、ワイルドカード文字を受け取ります。

  • CLike
  • CNotLike
  • Like
  • NotLike

このパラメーターは Windows PowerShell 3.0 で導入されました。

Type:Object
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

入力

PSObject

オブジェクトをこのコマンドレットにパイプできます。

出力

Object

このコマンドレットは、入力オブジェクト セットから選択した項目を返します。

メモ

  • Windows PowerShell 4.0 以降では、 WhereForEachコレクションで使用するための メソッドが追加されました。