PowerShell Compare-Object Cmdlet

Witam wszystkich

Witamy w CloudAffaire i to jest Debjeet.

W ostatnim wpisie na blogu, omówiliśmy Tee-Object cmdlet w PowerShell.

PowerShell Tee-Object Cmdlet

W tym wpisie na blogu, omówimy Compare-Object cmdlet w PowerShell. Możesz użyć cmdlet Compare-Object do porównania dwóch obiektów, gdzie jeden zestaw obiektów jest źródłem lub odniesieniem, a inny zestaw obiektów jest celem lub różnicą. Polecenie Compare-Object próbuje porównać obiekty w oparciu o wszelkie metody porównania, które znajdzie na obiekcie. Jeśli nie zostanie znaleziony żaden obiekt porównania, wykonuje porównanie łańcuchów poprzez konwersję obiektu na łańcuch. Można również przekazać jedną lub więcej właściwości do porównania, gdy właściwości są przekazane, porównanie jest wykonywane tylko na podstawie tych właściwości.

Compare-Object cmdlet output:

  • (<=): wartość właściwości pojawiła się tylko w obiekcie odniesienia
  • (=>): wartość właściwości pojawiła się tylko w obiekcie różnicy
  • (==): wartość właściwości pojawiła się zarówno w obiekcie odniesienia, jak i w obiekcie różnicy

Uwaga: Jeżeli obiekt odniesienia lub obiekt różnicy jest pusty ($null), Compare-Object generuje błąd zakończenia.

Składnia polecenia Compare-Object Cmdlet:

Shell

1
2
3
4

.

5
6
7
8
9
10
11

## Porównaj-.Obiekt
## <PSObject>
## <PSObject>
##
## >]
##
##
##
##
##
##

Compare-Object Cmdlet Argument List:

  • -CaseSensitive: Wskazuje, że porównania powinny być wrażliwe na wielkość liter.
  • -Culture: Określa kulturę, która ma być używana do porównań.
  • -DifferenceObject: Określa obiekty, które są porównywane z obiektami odniesienia.
  • -ExcludeDifferent: Wskazuje, że ten cmdlet wyświetla tylko właściwości porównywanych obiektów, które są równe. Różnice między obiektami są odrzucane.
  • -IncludeEqual: IncludeEqual wyświetla dopasowania między obiektami odniesienia i obiektami różnic.
  • -PassThru: Gdy użyjesz parametru PassThru, Compare-Object pomija owijkę PSCustomObject wokół porównywanych obiektów i zwraca obiekty różniące się, niezmienione.
  • -Property: Określa tablicę właściwości obiektów odniesienia i obiektów różniących się do porównania.
  • -ReferenceObject: Określa tablicę obiektów używanych jako referencja do porównania.
  • -SyncWindow: Określa liczbę sąsiednich obiektów, które Compare-Object sprawdza podczas szukania dopasowania w kolekcji obiektów.

PowerShell Compare-Object Cmdlet:

Shell

1
2
3
4
5

.

6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

##########################################
## PowerShell | Cmdlet | Compare-Object ##
##########################################
## PowerShell Latest Version (5)
## zadeklaruj dwie tablice z typem danych string
$a = „cat”, „szczur”, „pies”, „człowiek”
$b = „jabłko”, „banan”, „pies”, „mango”
## porównaj dwa obiekty w PowerShell
Compare-Object -ReferenceObject $a -DifferenceObject $b
## porównaj dwa obiekty w PowerShell z rozróżnianiem wielkości liter
Compare-Object -ReferenceObject $a -DifferenceObject $b -CaseSensitive
## porównaj dwa obiekty w PowerShell i pokaż różnicę i podobieństwo
Compare-Object -ReferenceObject $a -DifferenceObject $b -IncludeEqual
## porównaj dwa obiekty w PowerShell i pokaż co jest wspólne
Compare-Object -ReferenceObject $a -DifferenceObject $b -IncludeEqual -ExcludeDifferent
## porównaj dwa obiekty w PowerShell na podstawie określonej właściwości obiektu
Compare-Object -ReferenceObject $a -DifferenceObject $b -Property length

Mam nadzieję, że podobał Ci się ten artykuł. W następnym wpisie na blogu, omówimy cmdlet Add-Content w PowerShell.

Aby uzyskać więcej szczegółów na temat PowerShell, prosimy o zapoznanie się z poniższą oficjalną dokumentacją

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about?view=powershell-5.1

.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.