Ciao a tutti
Benvenuti su CloudAffaire e sono Debjeet.
Nell’ultimo post del blog, abbiamo discusso di Tee-Object cmdlet in PowerShell.
In questo post del blog, discuteremo Compare-Object cmdlet in PowerShell. Puoi usare Compare-Object cmdlet per confrontare due oggetti dove un set di oggetti è la fonte o il riferimento e un altro set di oggetti è il target o la differenza. Il cmdlet Compare-Object cerca di confrontare gli oggetti in base a qualsiasi metodo di confronto che trova sull’oggetto. Se non viene trovato alcun oggetto di confronto, esegue un confronto tra stringhe convertendo l’oggetto in una stringa. Puoi anche passare una o più proprietà per il confronto, quando le proprietà vengono passate il confronto viene fatto solo in base a quelle proprietà.
Compare-Object cmdlet output:
- (<=): il valore della proprietà è apparso solo nell’oggetto di riferimento
- (=>): il valore della proprietà è apparso solo nell’oggetto differenza
- (==): il valore della proprietà è apparso sia nell’oggetto riferimento che nell’oggetto differenza
Nota: Se gli oggetti riferimento o differenza sono nulli ($null), Compare-Object genera un errore di terminazione.
Sintassi del comando Compare-Object:
1
2
3
4
5
6
7
8
9
10
11
|
## Compare-Oggetto
## <PSObject>
## <PSObject>
##
### >]
##
##
###
##
##
##
|
Compare-Oggetto Lista degli argomenti del Cmdlet:
- -CaseSensitive: Indica che i confronti dovrebbero essere case-sensitive.
- -Cultura: Specifica la cultura da usare per i confronti.
- -DifferenceObject: Specifica gli oggetti che vengono confrontati con gli oggetti di riferimento.
- -ExcludeDifferent: Indica che questo cmdlet visualizza solo le caratteristiche degli oggetti confrontati che sono uguali. Le differenze tra gli oggetti vengono scartate.
- -IncludeEqual: IncludeEqual visualizza le corrispondenze tra gli oggetti di riferimento e di differenza.
- -PassThru: Quando si usa il parametro PassThru, Compare-Object omette il wrapper PSCustomObject intorno agli oggetti confrontati e restituisce gli oggetti diversi, invariati.
- -Property: Specifica un array di proprietà degli oggetti di riferimento e di differenza da confrontare.
- -ReferenceObject: Specifica un array di oggetti usati come riferimento per il confronto.
- -SyncWindow: Specifica il numero di oggetti adiacenti che Compare-Object ispeziona mentre cerca una corrispondenza in una collezione di oggetti.
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 | Compare-Object ##
##########################################
### PowerShell Ultima versione (5)
## dichiara due array con dati di tipo stringa
$a = “gatto”, “ratto”, “cane”, “uomo”
$b = “mela”, “banana”, “cane”, “mango”
## confronta due oggetti in PowerShell
Compare-Object -ReferenceObject $a -DifferenceObject $b
## confronta due oggetti in PowerShell con case sensitive
Compare-Object -ReferenceObject $a -DifferenceObject $b -CaseSensitive
## confronta due oggetti in PowerShell e mostra la differenza e la somiglianza
Compare-Object -ReferenceObject $a -DifferenceObject $b -IncludeEqual
## confronta due oggetti in PowerShell e mostra ciò che è comune
Compare-Object -ReferenceObject $a -DifferenceObject $b -IncludeEqual -ExcludeDifferent
## confronta due oggetti in PowerShell basandosi su una specifica proprietà dell’oggetto
Compare-Object -ReferenceObject $a -DifferenceObject $b -Property length
|
Spero ti sia piaciuto questo articolo. Nel prossimo post del blog, discuteremo il cmdlet Add-Content in PowerShell.
Per ottenere maggiori dettagli su PowerShell, seguite gentilmente la seguente documentazione ufficiale
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about?view=powershell-5.1