Un array è la raccolta/gruppo di elementi di dati simili/identici situati in prossimità della memoria. Gli array possono essere confrontati in PowerShell usando il "Confronta oggetto"Cmdlet e"-Contiene"Operatore. Il cmdlet "confronta-oggetto" in PowerShell viene utilizzato per confrontare i due set di oggetti. Il primo insieme di oggetti è "riferimento"E la seconda serie di oggetti è il"differenza". D'altra parte, l'operatore "-contains" controlla se un array contiene un oggetto specifico o no.
Il seguente post coprirà i dettagli sul confronto di PowerShell Arrays.
Cos'è potente powerhell confronta array?
Questi approcci saranno presi in considerazione durante il confronto degli array:
Metodo 1: confronta le array utilizzando il cmdlet "confronta-object"
Il cmdlet "confronta-oggetto" in PowerShell viene utilizzato per confrontare i due set di oggetti. Un insieme di oggetti è "riferimento"E il secondo set è il"differenza".
Esempio 1: utilizzare il cmdlet "confronta object" per confrontare due array
L'esempio seguente verificherà se l'array contiene un oggetto specifico o no:
Confronta -object -referencebject (get -content -path c: \ doc \ ref_file.txt) -differencebject (get -content -path c: \ doc \ dif_file.TXT)
Secondo il codice sopra:
Esempio 2: utilizzare il parametro "-includeequal" insieme al cmdlet "confronta object"
L'esempio seguente visualizzerà i valori dell'array che esistono in entrambi gli array aggiungendo "-Includeequal"Parametro alla fine:
Confronta -object -referencebject (get -content -path c: \ doc \ ref_file.txt) -differencebject (get -content -path c: \ doc \ dif_file.txt) -includeequal
Metodo 2: confronta gli array usando l'operatore "-contains"
IL "-Contiene"L'operatore in PowerShell controlla se l'articolo specifico è disponibile nella raccolta o meno. L'operatore dichiarato non comprende le raccolte per impostazione predefinita. Tuttavia, il codice creato dall'utente aiuta l'operatore "contenuti" a comprendere la raccolta di oggetti.
Esempio 1: verificare se un array contiene o meno il colore specificato
La seguente dimostrazione verificherà se un array contiene un determinato oggetto o meno:
$ Colors = @('Blue', 'Red', 'White', 'Yellow')
$ Colors -Conteins 'White'
Nel frammento di codice sopra:
Esempio 2: utilizzare il "foreach-object" per verificare se il primo array esiste nel secondo array o no
Questa illustrazione confronterà due array e quindi deciderà se un array esiste nel secondo o no:
$ Colors1 = @('Yellow', 'Violet', 'Green', 'Pink')
$ Colors2 = @('Blue', 'Violet', 'Black', 'Orange')
$ Colors1 | Foreach-object
if ($ Colors2 -conta $ _)
Write-host "'$ Colors2 contiene la stringa' $ Colors1 [$ _]"
Secondo il codice sopra indicato:
Si trattava di confrontare gli array in PowerShell.
Conclusione
Gli array PowerShell possono essere confrontati usando vari metodi o cmdlet. Questi metodi includono l'uso del “-Contiene"Operatore o il"Confronta oggetto"Cmdlet. Questo post ha elaborato le varie procedure per confrontare gli array in PowerShell.