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>]
-Match
[<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
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-GE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CGE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-LE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-CLE
[<CommonParameters>]
Where-Object
[-InputObject <PSObject>]
[-Property] <String>
[[-Value] <Object>]
-Like
[<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>]
-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>]
-CIn
[<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>
-Not
[<CommonParameters>]
Description
cmdlet은 Where-Object
전달되는 개체 컬렉션에서 특정 속성 값이 있는 개체를 선택합니다. 예를 들어 cmdlet을 Where-Object
사용하여 특정 날짜 이후에 만들어진 파일, 특정 ID가 있는 이벤트 또는 특정 버전의 Windows를 사용하는 컴퓨터를 선택할 수 있습니다.
Windows PowerShell 3.0부터 명령을 생성하는 Where-Object
방법에는 두 가지가 있습니다.
스크립트 블록입니다. 스크립트 블록을 사용하여 속성 이름, 비교 연산자 및 속성 값을 지정할 수 있습니다.
Where-Object
는 스크립트 블록 문이 true인 모든 개체를 반환합니다.예를 들어 다음 명령은 PriorityClass 속성의 값이 같은
Normal
프로세스인 우선 순위 클래스의 프로세스를 가져옵니다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 언어의 비교 연산자를 스크립트 블록에서만 사용할 수 있었습니다.
단일 속성을 Where-Object
제공하는 경우 cmdlet은 속성 값을 부울 식으로 처리합니다. 속성 의 Length 값이 0이 아닌 경우 식이 계산됩니다 $true
. 예: ('hi', '', 'there') | Where-Object Length
이전 예제는 기능적으로 다음과 같습니다.
('hi', '', 'there') | Where-Object Length -GT 0
('hi', '', 'there') | Where-Object { $_.Length -gt 0 }
PowerShell에서 부울을 평가하는 방법에 대한 자세한 내용은 about_Booleans 참조하세요.
예제
예제 1: 중지된 서비스 가져오기
이러한 명령은 중지된 모든 서비스의 목록을 가져옵니다. 자동 변수는 $_
cmdlet에 전달되는 각 개체를 Where-Object
나타냅니다.
첫 번째 명령은 스크립트 블록 형식을 사용하고 두 번째 명령은 비교 문 형식을 사용합니다. 이 명령은 동일한 방식으로 서비스를 필터링하고 동일한 출력을 반환합니다. 구문만 다릅니다.
Get-Service | Where-Object { $_.Status -eq "Stopped" }
Get-Service | Where-Object Status -EQ "Stopped"
예제 2: 작업 집합을 기반으로 프로세스 가져오기
이러한 명령은 작업 집합이 250MB(메가바이트)보다 큰 프로세스를 나열합니다. 명령은 동일한 방식으로 프로세스를 필터링하고 동일한 출력을 반환합니다. 구문만 다릅니다.
Get-Process | Where-Object { $_.WorkingSet -GT 250MB }
Get-Process | Where-Object WorkingSet -GT 250MB
예제 3: 프로세스 이름에 따라 프로세스 가져오기
이러한 명령은 문자p
로 시작하는 ProcessName 속성 값이 있는 프로세스를 가져옵니다. Match 연산자를 사용하면 정규식 일치를 사용할 수 있습니다.
명령은 동일한 방식으로 프로세스를 필터링하고 동일한 출력을 반환합니다. 구문만 다릅니다.
Get-Process | Where-Object { $_.ProcessName -Match "^p.*" }
Get-Process | Where-Object ProcessName -Match "^p.*"
예제 4: 비교 문 형식 사용
이 예제에서는 cmdlet의 새 비교 문 형식을 Where-Object
사용하는 방법을 보여줍니다.
첫 번째 명령은 비교 문 형식을 사용합니다. 별칭을 사용하지 않으며 모든 매개 변수의 이름을 포함합니다.
두 번째 명령은 비교 명령 형식의 더 자연스러운 용례입니다. 이 명령은 cmdlet 이름의 별칭을 Where-Object
대체 where
하고 모든 선택적 매개 변수 이름을 생략합니다.
명령은 동일한 방식으로 프로세스를 필터링하고 동일한 출력을 반환합니다. 구문만 다릅니다.
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-Object OutputType
Get-Command | Where-Object { $_.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-Object PSIsContainer
Get-ChildItem | Where-Object { $_.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-Object -Not PSIsContainer
Get-ChildItem | Where-Object { !$_.PSIsContainer }
예제 6: 여러 조건 사용
Get-Module -ListAvailable | Where-Object {
($_.Name -notlike "Microsoft*" -and $_.Name -notlike "PS*") -and $_.HelpInfoUri
}
이 예제에서는 여러 조건이 있는 Where-Object
명령을 만드는 방법을 보여 있습니다.
이 명령은 업데이트할 수 있는 도움말 기능을 지원하는 비코어 모듈을 가져옵니다. 이 명령은 cmdlet의 ListAvailable 매개 변수를 사용하여 컴퓨터의 Get-Module
모든 모듈을 가져옵니다. 파이프라인 연산자(|
)는 모듈을 cmdlet으로 PS
Microsoft
보냅니다. 이 모듈 Where-Object
은 이름이 시작되지 않거나 HelpInfoURI 속성에 대한 값이 있는 모듈을 가져오며, 이 모듈에 대한 업데이트된 도움말 파일을 찾을 위치를 PowerShell에 알려줍니다. -and
논리 연산자는 비교 문을 연결합니다.
이 예제에서는 스크립트 블록 명령 형식을 사용합니다. 논리 연산자(예: -and
,-or
) -not
는 스크립트 블록에서만 유효합니다. 명령의 비교 문 형식 Where-Object
에서는 사용할 수 없습니다.
- PowerShell 논리 연산자에 대한 자세한 내용은 about_Logical_Operators 참조하세요.
- Updatable 도움말 기능에 대한 자세한 내용은 about_Updatable_Help 참조하세요.
매개 변수
-CContains
개체의 속성 값이 지정된 값과 정확히 일치하는 경우 이 cmdlet이 컬렉션에서 개체를 가져옵니다. 이 작업은 대/소문자를 구분합니다.
예: Get-Process | Where-Object ProcessName -CContains "svchost"
CContains 는 값 컬렉션을 참조하며 컬렉션에 지정된 값과 정확히 일치하는 항목이 포함된 경우 true입니다. 입력이 단일 개체인 경우 PowerShell은 이를 하나의 개체 컬렉션으로 변환합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CEQ
속성 값이 지정된 값과 같으면 이 cmdlet이 개체를 가져오게 됨을 나타냅니다. 이 작업은 대/소문자를 구분합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CGE
속성 값이 지정된 값보다 크거나 같은 경우 이 cmdlet이 개체를 가져오도록 나타냅니다. 이 작업은 대/소문자를 구분합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CGT
속성 값이 지정된 값보다 큰 경우 이 cmdlet이 개체를 가져옵니다. 이 작업은 대/소문자를 구분합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CIn
속성 값에 지정된 값이 포함된 경우 이 cmdlet이 개체를 가져오게 됨을 나타냅니다. 이 작업은 대/소문자를 구분합니다.
예: Get-Process | Where-Object -Value "svchost" -CIn ProcessName
CIn 은 CContains와 비슷하지만 속성과 값 위치가 반대로 바뀝니다. 예를 들어 다음 문은 모두 true입니다.
"abc", "def" -CContains "abc"
"abc" -CIn "abc", "def"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CLE
속성 값이 지정된 값보다 작거나 같은 경우 이 cmdlet이 개체를 가져오도록 나타냅니다. 이 작업은 대/소문자를 구분합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CLike
속성 값이 와일드카드 문자(*
)를 포함하는 값과 일치하는 경우 이 cmdlet이 개체를 가져옵니다. 이 작업은 대/소문자를 구분합니다.
예: Get-Process | Where-Object ProcessName -CLike "*host"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CLT
속성 값이 지정된 값보다 작으면 이 cmdlet이 개체를 가져옵니다. 이 작업은 대/소문자를 구분합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CMatch
속성 값이 지정된 정규식과 일치하는 경우 이 cmdlet이 개체를 가져오게 됨을 나타냅니다. 이 작업은 대/소문자를 구분합니다. 입력이 단일 개체이면 일치하는 값이 자동 변수에 $Matches
저장됩니다.
예: Get-Process | Where-Object ProcessName -CMatch "Shell"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CNE
속성 값이 지정된 값과 다른 경우 이 cmdlet이 개체를 가져오고 있음을 나타냅니다. 이 작업은 대/소문자를 구분합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CNotContains
개체의 속성 값이 지정된 값과 정확히 일치하지 않는 경우 이 cmdlet이 개체를 가져옵니다. 이 작업은 대/소문자를 구분합니다.
예: Get-Process | Where-Object ProcessName -CNotContains "svchost"
NotContains 및 CNotContains 는 값 컬렉션을 참조하며 컬렉션에 지정된 값과 정확히 일치하는 항목이 없는 경우 true입니다. 입력이 단일 개체인 경우 PowerShell은 이를 하나의 개체 컬렉션으로 변환합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CNotIn
속성 값이 지정된 값과 정확히 일치하지 않는 경우 이 cmdlet이 개체를 가져오고 있음을 나타냅니다. 이 작업은 대/소문자를 구분합니다.
예: Get-Process | Where-Object -Value "svchost" -CNotIn -Property ProcessName
NotIn 및 CNotIn 연산자는 속성과 값 위치가 역방향이라는 점을 제외하고 NotContains 및 CNotContains와 유사합니다. 예를 들어 다음 문은 true입니다.
"abc", "def" -CNotContains "Abc"
"abc" -CNotIn "Abc", "def"
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CNotLike
속성 값이 와일드카드 문자를 포함하는 값과 일치하지 않는 경우 이 cmdlet이 개체를 가져옵니다. 이 작업은 대/소문자를 구분합니다.
예: Get-Process | Where-Object ProcessName -CNotLike "*host"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-CNotMatch
속성 값이 지정된 정규식과 일치하지 않는 경우 이 cmdlet이 개체를 가져오게 됨을 나타냅니다. 이 작업은 대/소문자를 구분합니다. 입력이 단일 개체이면 일치하는 값이 자동 변수에 $Matches
저장됩니다.
예: Get-Process | Where-Object ProcessName -CNotMatch "Shell"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Contains
개체의 속성 값에 있는 항목이 지정된 값과 정확히 일치하는 경우 이 cmdlet이 개체를 가져옵니다.
예: Get-Process | Where-Object ProcessName -Contains "Svchost"
입력이 단일 개체인 경우 PowerShell은 이를 하나의 개체 컬렉션으로 변환합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | IContains |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-EQ
속성 값이 지정된 값과 같으면 이 cmdlet이 개체를 가져오게 됨을 나타냅니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | IEQ |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-FilterScript
개체를 필터링하는 데 사용되는 스크립트 블록을 지정합니다. 스크립트 블록을 중괄호({}
)로 묶습니다.
매개 변수 이름 FilterScript는 선택 사항입니다.
형식: | ScriptBlock |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-GE
속성 값이 지정된 값보다 크거나 같은 경우 이 cmdlet이 개체를 가져오도록 나타냅니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | IGE |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-GT
속성 값이 지정된 값보다 큰 경우 이 cmdlet이 개체를 가져옵니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | IGT |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-In
속성 값이 지정된 값과 일치하는 경우 이 cmdlet이 개체를 가져옵니다. 예시:
Get-Process | Where-Object -Property ProcessName -in -Value "Svchost", "TaskHost", "WsmProvHost"
입력이 단일 개체인 경우 PowerShell은 이를 하나의 개체 컬렉션으로 변환합니다.
개체의 속성 값이 배열인 경우 PowerShell은 참조 같음을 사용하여 일치 항목을 확인합니다. Where-Object
는 Property 매개 변수의 값과 Value 값이 개체의 인스턴스와 동일한 경우에만 개체를 반환합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | IIn |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-InputObject
필터링할 개체를 지정합니다. 개체를 .에 파이프할 Where-Object
수도 있습니다.
명령 결과를 Where-Object
파이핑하는 대신 InputObject 매개 변수를 Where-Object
사용하여 cmdlet은 InputObject를 단일 개체로 처리합니다. 값이 명령의 결과인 컬렉션인 경우에도 마찬가지입니다(예: -InputObject (Get-Process)
.).
InputObject는 개체의 배열 또는 컬렉션에서 개별 속성을 반환할 수 없으므로 정의된 속성에 특정 값이 있는 개체의 개체 컬렉션을 필터링하는 데 사용하는 Where-Object
경우 이 항목의 예제와 같이 파이프라인에서 사용하는 Where-Object
것이 좋습니다.
형식: | PSObject |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Is
속성 값이 지정된 .NET 형식의 인스턴스인 경우 이 cmdlet이 개체를 가져오고 있음을 나타냅니다. 형식 이름을 대괄호로 묶습니다.
예를 들어 Get-Process | Where-Object StartTime -Is [DateTime]
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-IsNot
속성 값이 지정된 .NET 형식의 인스턴스가 아닌 경우 이 cmdlet이 개체를 가져오고 있음을 나타냅니다.
예를 들어 Get-Process | where StartTime -IsNot [DateTime]
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-LE
속성 값이 지정된 값보다 작거나 같은 경우 이 cmdlet이 개체를 가져오도록 나타냅니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | ILE |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Like
속성 값이 와일드카드 문자(*
)를 포함하는 값과 일치하는 경우 이 cmdlet이 개체를 가져옵니다.
예: Get-Process | Where-Object ProcessName -Like "*host"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | ILike |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-LT
속성 값이 지정된 값보다 작은 경우 이 cmdlet이 개체를 가져오게 됨을 나타냅니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | ILT |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Match
속성 값이 지정된 정규식과 일치하는 경우 이 cmdlet이 개체를 가져오게 됨을 나타냅니다. 입력이 단일 개체이면 일치하는 값이 자동 변수에 $Matches
저장됩니다.
예: Get-Process | Where-Object ProcessName -Match "shell"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | IMatch |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-NE
속성 값이 지정된 값과 다른 경우 이 cmdlet이 개체를 가져오고 있음을 나타냅니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | INE |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Not
속성이 없거나 값 $null
이 있는 경우 이 cmdlet이 개체를 가져오거나 $false
예: Get-Service | Where-Object -Not "DependentServices"
이 매개 변수는 Windows PowerShell 6.1에서 도입되었습니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-NotContains
속성 값에 있는 항목이 지정된 값과 정확히 일치하는 항목이 없는 경우 이 cmdlet이 개체를 가져오게 됨을 나타냅니다.
예: Get-Process | Where-Object ProcessName -NotContains "Svchost"
NotContains 는 값 컬렉션을 참조하며 컬렉션에 지정된 값과 정확히 일치하는 항목이 없는 경우 true입니다. 입력이 단일 개체인 경우 PowerShell은 이를 하나의 개체 컬렉션으로 변환합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | INotContains |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-NotIn
속성 값이 지정된 값과 정확히 일치하지 않는 경우 이 cmdlet이 개체를 가져오고 있음을 나타냅니다.
예: Get-Process | Where-Object -Value "svchost" -NotIn -Property ProcessName
Value 값이 단일 개체인 경우 PowerShell은 이 값을 하나의 개체 컬렉션으로 변환합니다.
개체의 속성 값이 배열인 경우 PowerShell은 참조 같음을 사용하여 일치 항목을 확인합니다. Where-Object
는 Property 값과 Value 값이 개체의 인스턴스가 아닌 경우에만 개체를 반환합니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | INotIn |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-NotLike
속성 값이 와일드카드 문자(*
)를 포함하는 값과 일치하지 않는 경우 이 cmdlet이 개체를 가져오고 있음을 나타냅니다.
예: Get-Process | Where-Object ProcessName -NotLike "*host"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | INotLike |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-NotMatch
속성 값이 지정된 정규식과 일치하지 않을 때 이 cmdlet이 개체를 가져오고 있음을 나타냅니다. 입력이 단일 개체이면 일치하는 값이 자동 변수에 $Matches
저장됩니다.
예: Get-Process | Where-Object ProcessName -NotMatch "PowerShell"
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | SwitchParameter |
별칭: | INotMatch |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Property
입력 개체의 속성 이름을 지정합니다. 속성은 정적 속성이 아닌 인스턴스 속성이어야 합니다. 위치 매개 변수이므로 name, Property는 선택 사항입니다.
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | String |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Value
속성 값을 지정합니다. 매개 변수 이름 값은 선택 사항입니다. 이 매개 변수는 다음 비교 매개 변수와 함께 사용할 때 와일드카드 문자를 허용합니다.
- CLike
- CNotLike
- Like
- NotLike
이 매개 변수는 Windows PowerShell 3.0에서 도입되었습니다.
형식: | PSObject |
Position: | 1 |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | True |
입력
모든 개체를 이 cmdlet으로 파이프할 수 있습니다.
출력
이 cmdlet은 입력 개체 집합에서 선택한 항목을 반환합니다.
참고
PowerShell에는 다음 별칭이 포함됩니다.Where-Object
- 모든 플랫폼:
?
where
Windows PowerShell 4.0 Where
부터 컬렉션에 ForEach
사용할 메서드가 추가되었습니다.
이러한 메서드 에 대한 자세한 내용은 about_arrays
관련 링크
PowerShell