Compare-Object
두 개체 집합을 비교합니다.
구문
Compare-Object [-ReferenceObject] <PSObject[]> [-DifferenceObject] <PSObject[]> [-CaseSensitive] [-Culture <string>] [-ExcludeDifferent] [-IncludeEqual] [-PassThru] [-Property <Object[]>] [-SyncWindow <int>] [<CommonParameters>]
설명
Compare-Object cmdlet은 두 개체 집합을 비교합니다. 한 개체 집합은 참조 집합이고 다른 개체 집합은 차이 집합입니다.
비교 결과는 속성 값이 참조 집합(<= 기호로 표시)의 개체에만 나타나는지, 차이 집합(=> 기호로 표시)의 개체에만 나타나는지, 또는 IncludeEqual 매개 변수가 두 개체(== 기호로 표시) 모두에 지정되는지 여부를 나타냅니다.
매개 변수
-CaseSensitive
비교할 때는 대/소문자를 구분해야 한다는 것을 나타냅니다.
필수 여부 |
false |
위치 |
named |
기본값 |
|
파이프라인 입력 적용 여부 |
false |
와일드카드 문자 적용 여부 |
false |
-Culture <string>
비교할 때 사용할 culture를 지정합니다.
필수 여부 |
false |
위치 |
named |
기본값 |
|
파이프라인 입력 적용 여부 |
false |
와일드카드 문자 적용 여부 |
false |
-DifferenceObject <PSObject[]>
참조 개체와 비교할 개체를 지정합니다.
필수 여부 |
true |
위치 |
2 |
기본값 |
|
파이프라인 입력 적용 여부 |
true (ByValue) |
와일드카드 문자 적용 여부 |
false |
-ExcludeDifferent
동일한 비교 개체의 특징만 표시합니다.
필수 여부 |
false |
위치 |
named |
기본값 |
|
파이프라인 입력 적용 여부 |
false |
와일드카드 문자 적용 여부 |
false |
-IncludeEqual
동일한 비교 개체의 특징을 표시합니다. 기본적으로 참조 개체와 차이 개체 간에 서로 다른 특징만 표시됩니다.
필수 여부 |
false |
위치 |
named |
기본값 |
|
파이프라인 입력 적용 여부 |
false |
와일드카드 문자 적용 여부 |
false |
-PassThru
비교한 개체를 파이프라인으로 전달합니다. 기본적으로 이 cmdlet에서는 출력을 생성하지 않습니다.
필수 여부 |
false |
위치 |
named |
기본값 |
|
파이프라인 입력 적용 여부 |
false |
와일드카드 문자 적용 여부 |
false |
-Property <Object[]>
비교할 참조 개체와 차이 개체의 속성을 지정합니다.
필수 여부 |
false |
위치 |
named |
기본값 |
|
파이프라인 입력 적용 여부 |
false |
와일드카드 문자 적용 여부 |
false |
-ReferenceObject <PSObject[]>
비교할 때 참조로 사용되는 개체입니다.
필수 여부 |
true |
위치 |
1 |
기본값 |
|
파이프라인 입력 적용 여부 |
false |
와일드카드 문자 적용 여부 |
false |
-SyncWindow <int>
일치하는 항목이 없는 경우에 순서를 다시 동기화하도록 시도할 검색 영역을 정의합니다. 기본값은 [Int32]::MaxValue입니다.
필수 여부 |
false |
위치 |
named |
기본값 |
[Int32]::MaxValue |
파이프라인 입력 적용 여부 |
false |
와일드카드 문자 적용 여부 |
false |
<CommonParameters>
이 cmdlet은 -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, -OutVariable 등의 일반 매개 변수를 지원합니다. 자세한 내용은 about_commonparameters.
입력 및 출력
입력 유형은 cmdlet으로 파이프할 수 있는 개체의 유형입니다. 반환 유형은 cmdlet에서 반환되는 개체의 유형입니다.
입력 |
System.Management.Automation.PSObject DifferenceObject 개체를 Compare-Object로 파이프할 수 있습니다. |
출력 |
없음 또는 차이가 있는 개체 PassThru 매개 변수를 사용하는 경우 Compare-Object는 차이가 있는 개체를 반환합니다. 그렇지 않으면 아무 출력도 생성하지 않습니다. |
예 1
C:\PS>compare-object -referenceobject $(get-content C:\test\testfile1.txt) -differenceobject $(get-content C:\test\testfile2.txt)
설명
-----------
이 명령은 두 텍스트 파일의 내용을 비교합니다. 두 파일 모두에 나타나지 않고 둘 중 한 파일에만 나타나는 줄을 표시합니다.
예 2
C:\PS>compare-object -referenceobject $(get-content C:\Test\testfile1.txt) -differenceobject $(get-content C:\Test\testfile2.txt) -includeequal
설명
-----------
이 명령은 두 텍스트 파일 내용을 줄별로 비교합니다. 두 파일 내용의 모든 줄을 표시하여 각 줄이 Textfile1.txt이나 Textfile2.txt에만 나타나는지 또는 두 파일 모두에 나타나는지 표시합니다.
예 3
C:\PS>$processes_before = get-process
C:\PS> notepad
C:\PS> $processes_after = get-process
C:\PS> compare-object -referenceobject $processes_before -differenceobject $processes_after
설명
-----------
이들 명령은 두 프로세스 개체 집합을 비교합니다.
첫 번째 명령은 Get-Process cmdlet을 사용하여 컴퓨터의 프로세스를 가져옵니다. 그런 다음 해당 프로세스를 $processes_before 변수에 저장합니다.
두 번째 명령은 메모장을 시작합니다.
세 번째 명령은 Get-Process cmdlet을 다시 시작하여 결과 프로세스를 $processes_after 변수에 저장합니다.
네 번째 명령은 Compare-Object cmdlet을 사용하여 두 프로세스 개체 집합을 비교하고 그 차이를 표시합니다. 여기에는 메모장의 새 인스턴스가 포함됩니다.
참고 항목
개념
Group-Object
Measure-Object
Sort-Object
ForEach-Object
New-Object
Select-Object
Tee-Object
Where-Object