Hello mindenkinek
Köszöntöm a CloudAffaire-en, és itt Debjeet.
A legutóbbi blogbejegyzésben a Tee-Object cmdletet tárgyaltuk a PowerShellben.
Ebben a blogbejegyzésben a PowerShell Compare-Object cmdletről lesz szó. A Compare-Object cmdlet segítségével két objektumot hasonlíthat össze, ahol az egyik objektumkészlet a forrás vagy hivatkozás, a másik objektumkészlet pedig a cél vagy a különbség. A Compare-Object cmdlet megpróbálja összehasonlítani az objektumokat az objektumon talált összehasonlítási módszerek alapján. Ha nem talál összehasonlító objektumot, akkor karakterlánc-összehasonlítást végez az objektum karakterlánccá alakításával. Egy vagy több tulajdonságot is átadhat az összehasonlításhoz, a tulajdonságok átadása esetén az összehasonlítás csak ezek alapján történik.
Compare-Object cmdlet kimenete:
- (<=): a tulajdonság értéke csak a referenciaobjektumban jelent meg
- (=>): a tulajdonság értéke csak a különbségobjektumban jelent meg
- (==): a tulajdonság értéke a referenciaobjektumban és a különbségobjektumban is megjelent
Megjegyzés: Ha a referencia- vagy a különbségobjektum null ($null), a Compare-Object befejező hibát generál.
Compare-Object Cmdlet szintaxis:
1
2
3
4
. 5
6
7
8
9
10
11
|
## Compare-Object
## <PSObject>
## <PSObject>
##
## >]
##
##
##
##
##
##
##
|
Compare-Object Cmdlet argumentumlistája:
- -CaseSensitive:
- -Culture: Megadja az összehasonlításokhoz használandó kultúrát.
- -DifferenceObject: Megadja a referenciaobjektumokkal összehasonlított objektumokat.
- -ExcludeDifferent: Megadja, hogy ez a cmdlet csak az összehasonlított objektumok azonos jellemzőit jelenítse meg. Az objektumok közötti különbségek elvetésre kerülnek.
- -IncludeEqual: Az IncludeEqual megjeleníti a referencia- és a különbségobjektumok közötti egyezéseket.
- -PassThru: A PassThru paraméter használatakor a Compare-Object elhagyja az összehasonlított objektumok körüli PSCustomObject burkolatot, és változatlanul visszaadja az eltérő objektumokat.
- -Property: Megadja az összehasonlítandó referencia- és különböző objektumok tulajdonságainak tömbjét.
- -ReferenceObject: Megadja az összehasonlításhoz referenciaként használt objektumok tömbjét.
- -SyncWindow: Megadja a szomszédos objektumok számát, amelyeket a Compare-Object megvizsgál, miközben egyezést keres egy objektumgyűjteményben.
PowerShell Compare-Object Cmdlet:
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 | Összehasonlítás-Object ##
##########################################
## PowerShell Latest Version (5)
## deklaráljunk két tömböt string adattípussal
$a = “cat”, “patkány”, “kutya”, “ember”
$b = “alma”, “banán”, “kutya”, “mango”
## két objektum összehasonlítása a PowerShellben
Compare-Object -ReferenceObject $a -DifferenceObject $b
## két objektum összehasonlítása a PowerShellben nagy- és kisbetű-érzékenységgel
Compare-Object -ReferenceObject $a -DifferenceObject $b -CaseSensitive
## összehasonlít két objektumot a PowerShellben és megmutatja a különbséget és a hasonlóságot
Compare-Object -ReferenceObject $a -DifferenceObject $b -.IncludeEqual
## összehasonlít két objektumot a PowerShellben és megmutatja, mi a közös
Compare-Object -ReferenceObject $a -DifferenceObject $b -IncludeEqual -ExcludeDifferent
## összehasonlít két objektumot a PowerShellben egy adott objektumtulajdonság alapján
Compare-Object -ReferenceObject $a -DifferenceObject $b -Property length
|
Remélem, tetszett a cikk. A következő blogbejegyzésben az Add-Content cmdletet fogjuk tárgyalni a PowerShellben.
A PowerShell további részleteihez kérjük, kövesse az alábbi hivatalos dokumentációt
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about?view=powershell-5.1
.