Question Sélectionner une partie d'un object

Plus d'informations
il y a 14 ans 8 mois #10229 par ageofempiresz
Le problème vient de ma boucle foreach-object.
Les objects sont perdu après cette boucle.
Le triage fonctionne.

Modification effectué :

[code:1]Get-QADUser -IncludeAllProperties | select-object DN,givenName,SN,mail,telephoneNumber,description | Where-Object { $_.telephoneNumber-match \"[0-9]\" } | Sort-Object SN,givenName | ForEach-Object { $_.DN-match \"CN=\b[^,]*,OU=(.*?),\" } | Export-Csv -Encoding UTF8 -Delimiter `| -NoTypeInformation -Path $MAINDIR[/code:1]

Est-ce-je dois faire pour récupérer mes objects, SVP ?

Message édité par: ageofempiresz, à: 8/09/11 16:42<br><br>Message édité par: ageofempiresz, à: 8/09/11 19:49

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

Plus d'informations
il y a 14 ans 8 mois #10231 par xyz
Réponse de xyz sur le sujet Re:Sélectionner une partie d'un object
Change ton Foreach :
[code:1] ForEach-Object { $_.DN -match \&quot;CN=\b[^,]*,OU=(.*?),\&quot; } [/code:1]
en Where :
[code:1]Get-QADUser -IncludeAllProperties |
Select-Object DN,givenName,SN,mail,telephoneNumber,description |
Where-Object { $_.telephoneNumber -match \&quot;[0-9]\&quot; } |
Sort-Object SN,givenName |
Where-Object { $_.DN -match \&quot;CN=\b[^,]*,OU=(.*?),\&quot; } |
Export-Csv -Encoding UTF8 -Delimiter -NoTypeInformation -Path $MAINDIR[/code:1]

Le Foreach n'émet pas de données, c'est l'utilisateur qui doit assumer cette tâche :
[code:1]
ForEach-Object {
if ($_.DN -match \&quot;CN=\b[^,]*,OU=(.*?),\&quot;«»)
{$_}
#else pas d'émission d'objet, on passe à l'objet suivant émit
#par Get-QADUser en reprenant au début du pipe.
} [/code:1]<br><br>Message édité par: Laurent Dardenne, à: 8/09/11 20:51

Tutoriels PowerShell

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

Plus d'informations
il y a 14 ans 8 mois #10236 par ageofempiresz
La récupération des objects fonctionne.
Mais la boucle, car elle devait remplacer l'object DN.

Après un test j'ai écrasé la variable DN.

ça fonctionne, je te remercie de m'avoir aider.

Voici le script final :

[code:1]Get-QADUser -IncludeAllProperties | select-object DN,givenName,SN,mail,telephoneNumber,description | Where-Object { $_.telephoneNumber-match \&quot;[0-9]\&quot; } | ForEach-Object { if($_.DN-match \&quot;CN=\b[^,]*,OU=(.*?),\&quot;«») {$_.DN = $matches[1] ; $_} } | Sort-Object DN,SN,givenName | Export-Csv -Encoding UTF8 -Delimiter `| -NoTypeInformation -Path $MAINDIR[/code:1]<br><br>Message édité par: ageofempiresz, à: 9/09/11 09:46

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

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