Question
compare-object, compare array
- Jireck
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 13 ans 2 mois #8587
par Jireck
compare-object, compare array a été créé par Jireck
Bonjour tout le monde,
cela faisait un bon moment que je n'était point venu et je le déplore...
J'aimerais beaucoup savoir comment comparer 2 array (object) simplement...
d'un coté, j'ai simplement
[code:1]$list_homedir = gci -name -Path \"H:\Homedir\"[/code:1]
et de l'autre
[code:1]$user = getuserfromadgroup(mongroup)[/code:1]
fonction pris sur ce site (powershell-scripting.com/index.php?optio...id=119&Itemid=71) qui me ramène le SamAccountName
J'aimerais maintenant une comparaison des deux tableaux, ceux qui me manque d'un coté afin d'enlever les homedir qui n'as plus de compte dans l'AD.
J'essaye :
[code:1]$comp = compare-Object $list_homedir $user
write-host \"Objects only exist in the first array\"
$comp | % { if ($_.SideIndicator -match '<=') {$_.InputObject}}[/code:1]
Et cela marche
Je traite ensuite le reste
si cela peux aider des gens car parfois on se lance dans des plans très très compliqué
cela faisait un bon moment que je n'était point venu et je le déplore...
J'aimerais beaucoup savoir comment comparer 2 array (object) simplement...
d'un coté, j'ai simplement
[code:1]$list_homedir = gci -name -Path \"H:\Homedir\"[/code:1]
et de l'autre
[code:1]$user = getuserfromadgroup(mongroup)[/code:1]
fonction pris sur ce site (powershell-scripting.com/index.php?optio...id=119&Itemid=71) qui me ramène le SamAccountName
J'aimerais maintenant une comparaison des deux tableaux, ceux qui me manque d'un coté afin d'enlever les homedir qui n'as plus de compte dans l'AD.
J'essaye :
[code:1]$comp = compare-Object $list_homedir $user
write-host \"Objects only exist in the first array\"
$comp | % { if ($_.SideIndicator -match '<=') {$_.InputObject}}[/code:1]
Et cela marche
Je traite ensuite le reste
si cela peux aider des gens car parfois on se lance dans des plans très très compliqué
Connexion ou Créer un compte pour participer à la conversation.
- Jacques Barathon
- Hors Ligne
- Administrateur
Réduire
Plus d'informations
- Messages : 576
- Remerciements reçus 0
il y a 13 ans 2 mois #8592
par Jacques Barathon
Réponse de Jacques Barathon sur le sujet Re:compare-object, compare array
Merci pour le partage. Tu as mille fois raison, compare-object permet bien souvent de se sortir de situations avec une simplicité déconcertantes.
En complément, tu peux aussi simplifier le \"foreach\" suivi d'un \"if\", car il s'agit en définitive d'un \"where\" :
[code:1]
$comp | where {$_.SideIndicator -eq '<='}
[/code:1]
Au passage, j'ai remplacé -match par -eq, plus exact et plus \"économe\" dans ce contexte.<br><br>Message édité par: janel, à: 26/01/11 13:27
En complément, tu peux aussi simplifier le \"foreach\" suivi d'un \"if\", car il s'agit en définitive d'un \"where\" :
[code:1]
$comp | where {$_.SideIndicator -eq '<='}
[/code:1]
Au passage, j'ai remplacé -match par -eq, plus exact et plus \"économe\" dans ce contexte.<br><br>Message édité par: janel, à: 26/01/11 13:27
Connexion ou Créer un compte pour participer à la conversation.
- Jireck
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 13 ans 2 mois #8628
par Jireck
Réponse de Jireck sur le sujet Re:compare-object, compare array
Salut Janel
tu me remercie pour mon partage et moi je te remercie pour tes explications et améliorations.
Bonne communauté
Je prends bonne note... du code ...
tu me remercie pour mon partage et moi je te remercie pour tes explications et améliorations.
Bonne communauté
Je prends bonne note... du code ...
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.067 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- compare-object, compare array