Question Problème de tableau

Plus d'informations
il y a 8 ans 3 mois #25050 par Philippe
Réponse de Philippe sur le sujet Re:Problème de tableau

Cependant, j'ai le problème du dernier caractère qui lui aussi est une \",\".

normal, je pensais pas que cela aller te gêné, et puis c'était plus simple a comprendre

petite astuce simple pour cette situation :

[code:1]if ($GrpsApply = \"\"«») {
$GrpsApply += $_.Trustee.Name
}
else {
$GrpsApply += \", \" + $_.Trustee.Name
}
[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

  • PatriceLT
  • Auteur du sujet
  • Visiteur
  • Visiteur
il y a 8 ans 3 mois #25052 par PatriceLT
Réponse de PatriceLT sur le sujet Re:Problème de tableau
Tu as bien fait de me proposer cette solution 6ratgus, ne t'en fais pas, je sais que des fois mes demandes sont un peu particulières et donc un peu farfelus...

Mais si je veux avoir quelque chose de propre qui corresponde au besoin attendu, je n'ai pas trop le choix :(

Ton dernier bout de code donne ce résultat :

Dans ma GPO (gpmc) :
Nom GPO : GPO1
Groupe appliqué : Domain Computers
Groupe exclu : Toto1 Titi1

[code:1]

GPO Groupe Apply Groupe Exclu
GPO1 , Domain Computers , Titi1

[/code:1]

Il me prend le dernier groupe de ma variable $GrpsXXXXX.

Entre Autre, dans les 2 variables groupes, je peux avoir :

0 Groupes = Vide
1 Groupe = Affichage normal
1+ Groupe = Affichage avec \",\"

Cependant j'ai testé un test avec le count de ma variable, mais celle ci ressort comme ceci :
[code:1]
GPO Grps Apply Grps Exclu
GPO1 1 1
1
[/code:1]

Entre autre, elle prend pour 2 groupes dans la variable $GrpsXXXX, non pas un count de 2, mais 2 count de 1 ... donc pour count le nombre de groupe dans ma variable, ça ne fonctionne ni avec un -ge, ni avec un -le, ni même le -gt ou -lt<br><br>Message édité par: PatriceLT, à: 23/02/18 16:29

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 3 mois #25053 par Philippe
Réponse de Philippe sur le sujet Re:Problème de tableau
pour la virgule au début des groupes, c'est que tu n'a pas initialisé la variable en string en début de boucle

remplace $GrpsApply = @() par $GrpsApply = \&quot;\&quot;

pour ton problème de count, il me faudrait la dernière version de ton script pour comprendre l'origine du probleme

Connexion ou Créer un compte pour participer à la conversation.

  • PatriceLT
  • Auteur du sujet
  • Visiteur
  • Visiteur
il y a 8 ans 2 mois #25054 par PatriceLT
Réponse de PatriceLT sur le sujet Re:Problème de tableau
Salut 6ratgus,

Voici le code que j'utilise, j'ai vérifié, je reinit bien mes variables groupes avec \&quot;\&quot; :

[code:1]
Import-Module ActiveDirectory

Import-Module GroupPolicy


$Domaine = \&quot;patrice.lan\&quot;

$OUs = \&quot;DC=PATRICE,DC=LAN\&quot;

(Je prend donc toutes les OUs (Computers + Users) de mon domaine grâce au SearchScope Subtree)


# Récupération de toutes les OUs + Sous OUs #

$NomGpos = Get-ADOrganizationalUnit -SearchBase $OUs -SearchScope Subtree -Server $Domaine -Filter * | foreach {

$OU = $_.DistinguishedName

# Récupération des GPOs liés à ces OUs #

(Get-GPInheritance -Target $OU -Domain $Domaine).GpoLinks | foreach {

$_.DisplayName | foreach {Get-GPO -Name $_ -Domain $Domaine} | foreach {

if ($_.GetSecurityInfo()) {

$GrpsExclu = \&quot;\&quot;
$GrpsApply = \&quot;\&quot;

$Item = $_

$NomGpo = $_.DisplayName

$Status = $_.GpoStatus

$_.GetSecurityInfo() | foreach {


if ($_.Permission -eq \&quot;GpoCustom\&quot;«») {
if($GrpsExclu = \&quot;\&quot;«»)
{
$GrpsExclu += $_.Trustee.Name
}
else
{
$GrpsExclu += \&quot;, \&quot; + $_.Trustee.Name
}
}

elseif ($_.Permission -eq \&quot;GpoApply\&quot;«») {
if($GrpsApply = \&quot;\&quot;«»)
{
$GrpsApply += $_.Trustee.Name
}
else
{
$GrpsApply += \&quot;, \&quot; + $_.Trustee.Name
}
}
}
$objet = New-Object Psobject

$objet | Add-Member -Name \&quot;OU\&quot; -MemberType 'NoteProperty' -value $OU

$objet | Add-Member -Name \&quot;GPO\&quot; -MemberType 'NoteProperty' -value $NomGpo

$objet | Add-Member -Name \&quot;Groupes Apply\&quot; -MemberType 'NoteProperty' -value $GrpsApply

$objet | Add-Member -Name \&quot;Groupes Exclus\&quot; -MemberType 'NoteProperty' -value $GrpsExclu

$objet



}

}

}

}

$NomGpos
[/code:1]

Voila.

Connexion ou Créer un compte pour participer à la conversation.

  • PatriceLT
  • Auteur du sujet
  • Visiteur
  • Visiteur
il y a 8 ans 2 mois #25056 par PatriceLT
Réponse de PatriceLT sur le sujet Re:Problème de tableau
6ratgus,

je viens de revoir le script, j'ai trouvé la solution, il s'agit non pas de l'initialisation des variables, mais du test if :

[code:1]
if($GrpsApply -eq (au lieu de =) \&quot;\&quot;«»)
{
$GrpsApply += $_.Trustee.Name
}
else
{
$GrpsApply += \&quot;,\&quot; + $_.Trustee.Name
}
[/code:1]

C'est donc la même chose pour le GrpsExclu.

Merci en tout cas !<br><br>Message édité par: PatriceLT, à: 26/02/18 15:37

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 2 mois #25059 par Philippe
Réponse de Philippe sur le sujet Re:Problème de tableau
si le résultat est bon alors nickel B)<br><br>Message édité par: 6ratgus, à: 26/02/18 17:35

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.040 secondes
Propulsé par Kunena