Powershell - Vérifier les éléments d'un array en doublon

Pour me soutenir, vous pouvez vous abonner à la chaîne, partager et liker les vidéos, désactiver votre bloqueur de pub ou encore faire un don. Merci!

Bonjour,

Un petit code Powershell vous permettant de vérifier les éléments d’un array en doublon.

# Définition de l'ensemble des valeurs avec doublon
$array = 'A', 'B', 'C', 'C', 'B'
# Regroupement des objets et vérification des regroupements supérieurs à 1 (doublons)
$Doublon = ($array | Group-Object | Where-Object -FilterScript {$_.Count -gt 1}).Values
# Contrôle de condition si doublons ou non
if ($null -eq $Doublon) { 'Aucun doublon'} else { $Doublon}
# Définition de l'ensemble des valeurs sans doublons
$array = 'A', 'B', 'C'
# Contrôle de condition si doublons ou non
if ($null -eq $Doublon) { 'Aucun doublon'} else { $Doublon}
# Et on peut transformer ce code en une function
function test-doublon {
[CmdletBinding()] param (
[string[]]
$valeur )
#Regroupement des objets et vérification des regroupements supérieurs à 1 (doublons)
$Doublon = ($Valeur | Group-Object | Where-Object -FilterScript {$_.Count -gt 1}).Values
# Contrôle de condition si doublons ou non
if ($null -eq $Doublon) { 'Aucun doublon'} else { $Doublon }
}
# Syntaxes possibles
test-doublon -valeur $array
test-doublon $array
# Ou encore en fonction autorisant des valeurs du pipeline
function test-doublon {
[CmdletBinding()] param (
[array][Parameter(ValueFromPipeline)]
$Valeur )
#Regroupement des objets et vérification des regroupements supérieurs à 1 (doublons)
$Doublon = ($Valeur | Group-Object | Where-Object -FilterScript {$_.Count -gt 1}).Values
# Contrôle de condition si doublons ou non
if ($null -eq $Doublon) { 'Aucun doublon'} else { $Doublon}
}
# Syntaxes possibles
test-doublon -valeur $array
test-doublon $array
# Utilisation de l'opérateur unaire (la virgule) pour envoyer notre array comme un seul élément sinon le pipeline va traiter chaque valeur du array séparemment
,$array | test-doublon

Liens en relation