Question
Variable dans boucle à réutiliser
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 15 ans 4 mois #8113
par FO
Variable dans boucle à réutiliser a été créé par FO
Bonjour,
J'ai une boucle qui me permet de récupérer une donnée sur chaque utilisateur et ensuite je voudrai récupérer la totalisé des utilisateurs dans une seule boucle en forme de liste
Exemple :
[code:1]foreach($user in $users)
{
#Recherche des utilisateurs dans l'OU
if ($user.path -like \"*$UserOU\"«»)
{
if ([datetime]::FromFileTime(($user.properties.pwdlastset)[0]) -le $PWDays)
{
$UserName = $User.properties.displayname
}
}
}
$alluser = \"la liste des users sous forme d'une liste\"
[/code:1]
Je souhaite récupérer mon $UserName et le mettre dans la variable $alluser
Si $username = 'toto'
si $username = 'titi'
Si $username = 'tata'
alors $alluser dans je l'éxécute=
toto
titi
tata
Merci pour votre aide
J'ai une boucle qui me permet de récupérer une donnée sur chaque utilisateur et ensuite je voudrai récupérer la totalisé des utilisateurs dans une seule boucle en forme de liste
Exemple :
[code:1]foreach($user in $users)
{
#Recherche des utilisateurs dans l'OU
if ($user.path -like \"*$UserOU\"«»)
{
if ([datetime]::FromFileTime(($user.properties.pwdlastset)[0]) -le $PWDays)
{
$UserName = $User.properties.displayname
}
}
}
$alluser = \"la liste des users sous forme d'une liste\"
[/code:1]
Je souhaite récupérer mon $UserName et le mettre dans la variable $alluser
Si $username = 'toto'
si $username = 'titi'
Si $username = 'tata'
alors $alluser dans je l'éxécute=
toto
titi
tata
Merci pour votre aide
Connexion ou Créer un compte pour participer à la conversation.
- Arthur
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 226
- Remerciements reçus 0
il y a 15 ans 4 mois #8114
par Arthur
Réponse de Arthur sur le sujet Re:Variable dans boucle à réutiliser
En gros tu veux créer une liste qui contient tous les user ?
[code:1]$Alluser = New-Object Collections.ArrayList
foreach($user in $users)
{
#Recherche des utilisateurs dans l'OU
if ($user.path -like \"*$UserOU\"«»)
{
if ([datetime]::FromFileTime(($user.properties.pwdlastset)[0]) -le $PWDays)
{
$UserName = $User.properties.displayname
[Void]$Alluser.Add((New-object PSObject|
Add-member noteproperty Nom \"$UserName\"«»))
}
}
}
$Alluser = \"la liste des users sous forme d'une liste\"[/code:1]
msdn.microsoft.com/en-us/library/system....tions.arraylist.aspx
J'ai pas test le code et en ce moment je fais du bash...(
), je suis un peu rouillé donc y a peut être une erreur de syntaxe ou deux.<br><br>Message édité par: bilbao, à: 23/11/10 19:15
[code:1]$Alluser = New-Object Collections.ArrayList
foreach($user in $users)
{
#Recherche des utilisateurs dans l'OU
if ($user.path -like \"*$UserOU\"«»)
{
if ([datetime]::FromFileTime(($user.properties.pwdlastset)[0]) -le $PWDays)
{
$UserName = $User.properties.displayname
[Void]$Alluser.Add((New-object PSObject|
Add-member noteproperty Nom \"$UserName\"«»))
}
}
}
$Alluser = \"la liste des users sous forme d'une liste\"[/code:1]
msdn.microsoft.com/en-us/library/system....tions.arraylist.aspx
J'ai pas test le code et en ce moment je fais du bash...(
Connexion ou Créer un compte pour participer à la conversation.
- jojo
-
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 187
- Remerciements reçus 0
il y a 15 ans 4 mois #8117
par jojo
Réponse de jojo sur le sujet Re:Variable dans boucle à réutiliser
merci bilbao , pour ton aide et je te souhaite un bon apprentissage du bash
...j'ai une question concernant ton code...pourquoi choisir d'utiiser la classe .NET Collections.ArrayList au lieu de le faire directement
[code:1]
$array=@()
# puis dans la boucle
$array += $User.properties.displayname[/code:1]
es-ce que c'est plus rapide, ou c'est autre chose
merci
[code:1]
$array=@()
# puis dans la boucle
$array += $User.properties.displayname[/code:1]
es-ce que c'est plus rapide, ou c'est autre chose
merci
Connexion ou Créer un compte pour participer à la conversation.
- Arthur
- Hors Ligne
- Membre elite
-
Réduire
Plus d'informations
- Messages : 226
- Remerciements reçus 0
il y a 15 ans 4 mois #8118
par Arthur
Réponse de Arthur sur le sujet Re:Variable dans boucle à réutiliser
Pour plusieurs raisons en fait :
-C'est plus jolie
, nan c'est surtout que l'on peut facilement créer des listes avec des propriétés personnalisées, on peut plus facilement s'y retrouver
-On a plus de méthodes en bonus ( voir doc sur les Arraylist)
-On peut plus facilement y visualiser, j'ai pas mal bossé avec les Datagridview, des fichiers csv, XML ou l'utilisation d'Arraylist est plus propre et simple je trouve ( Je suis en qwerty j'ai pas le u avec accent pour le \"ou\"
)
-Une list n'a pas de taille fixe, donc c'est super cool quand on ne sait pas combien d'entrés on va ajouter dans le futur.
Dans cet exemple l'utilisation d'un simple tableau est en effet un très bonne solution mais je me suis dit que quand on fait ce genre de script et que l'on post sur ce forum on doit connaitre l'existence des tableaux.
Surtout si on a acheté le bouquin d'Arnaud. (
)
De plus ton code me semble faux, car si je me rappelle bien les tuto de Laurent on ne peut pas initialiser un tableau vide.
cf :
www.leedesmond.com/weblog/?p=183
HS : le bash c'est le mal, vive le perl/python/Powershell/...
<br><br>Message édité par: bilbao, à: 23/11/10 21:08
-C'est plus jolie
-On a plus de méthodes en bonus ( voir doc sur les Arraylist)
-On peut plus facilement y visualiser, j'ai pas mal bossé avec les Datagridview, des fichiers csv, XML ou l'utilisation d'Arraylist est plus propre et simple je trouve ( Je suis en qwerty j'ai pas le u avec accent pour le \"ou\"
-Une list n'a pas de taille fixe, donc c'est super cool quand on ne sait pas combien d'entrés on va ajouter dans le futur.
Dans cet exemple l'utilisation d'un simple tableau est en effet un très bonne solution mais je me suis dit que quand on fait ce genre de script et que l'on post sur ce forum on doit connaitre l'existence des tableaux.
Surtout si on a acheté le bouquin d'Arnaud. (
De plus ton code me semble faux, car si je me rappelle bien les tuto de Laurent on ne peut pas initialiser un tableau vide.
cf :
www.leedesmond.com/weblog/?p=183
HS : le bash c'est le mal, vive le perl/python/Powershell/...
Connexion ou Créer un compte pour participer à la conversation.
- FO
- Auteur du sujet
- Hors Ligne
- Membre junior
-
Réduire
Plus d'informations
- Messages : 31
- Remerciements reçus 0
il y a 15 ans 4 mois #8119
par FO
Réponse de FO sur le sujet Re:Variable dans boucle à réutiliser
Merci pour vos réponses.
J'ai essayé ton code jojo, ca ne fonctionne pas.
$array=@()
# puis dans la boucle
$array += $User.properties.displayname
Il me prend seulement la première valeur dans qui passe dans ma boucle. Il ne rajoute pas les autres valeurs dans ma même variable $array
J'ai essayé ton code jojo, ca ne fonctionne pas.
$array=@()
# puis dans la boucle
$array += $User.properties.displayname
Il me prend seulement la première valeur dans qui passe dans ma boucle. Il ne rajoute pas les autres valeurs dans ma même variable $array
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 15 ans 3 mois #8146
par Jacques Barathon
Réponse de Jacques Barathon sur le sujet Re:Variable dans boucle à réutiliser
Curieux, le code de jojo a l'air tout à fait correct. Es-tu sûr que ton code ressemble à ça ?
[code:1]
$Alluser = @()
foreach($user in $users)
{
#Recherche des utilisateurs dans l'OU
if ($user.path -like \"*$UserOU\"«»)
{
if ([datetime]::FromFileTime(($user.properties.pwdlastset)[0]) -le $PWDays)
{
$AllUser += $User.properties.displayname
}
}
}
[/code:1]
Si ce n'est pas le cas, peux-tu nous montrer le code que tu as ?<br><br>Message édité par: janel, à: 28/11/10 15:29
[code:1]
$Alluser = @()
foreach($user in $users)
{
#Recherche des utilisateurs dans l'OU
if ($user.path -like \"*$UserOU\"«»)
{
if ([datetime]::FromFileTime(($user.properties.pwdlastset)[0]) -le $PWDays)
{
$AllUser += $User.properties.displayname
}
}
}
[/code:1]
Si ce n'est pas le cas, peux-tu nous montrer le code que tu as ?<br><br>Message édité par: janel, à: 28/11/10 15:29
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.045 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Variable dans boucle à réutiliser