Question Sélectionner une partie d'un object

Plus d'informations
il y a 14 ans 8 mois #10195 par ageofempiresz
Bonjour,

Je réalise un script qui exporte les utilisateurs de l'AD sur un fichier csv.

Je voudrais sélectionner dans un object un morceau seulement des valeurs.

Voici mon script :

[code:1]#Main dir
$MAINDIR = \"\\nom_serveur\partage$\exportAD-user.csv\"

Add-PSSnapin Quest.ActiveRoles.ADManagement

Get-QADUser -IncludeAllProperties | select-object DN,givenName,SN,mail,telephoneNumber,description | Export-Csv -Encoding UTF8 -Delimiter `| -NoTypeInformation -Path $MAINDIR[/code:1]


exemple :
[code:1]CN=toto titi,OU= INFORMATIQUE,OU=DIRECTION SYSTÈME INFORMATION,DC=domain,DC=com[/code:1]

Le résultat sera :

[code:1]OU=INFORMATIQUE,OU=DIRECTION SYSTÈME INFORMATION[/code:1]

Quelqu'un pourrait m'aider.

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

Plus d'informations
il y a 14 ans 8 mois #10199 par ageofempiresz
J'ai trouvé une commande avec split.

Voici le résultat :

[code:1]$test = \"CN=toto titi,OU=INFORMATIQUE,OU=DSI,DC=domain,DC=com\"

$test.split(\",\"«»)[1].split(\"=\"«»)[1]
INFORMATIQUE

$test.split(\",\"«»)[2].split(\"=\"«»)[1]
DSI[/code:1]

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

Plus d'informations
il y a 14 ans 8 mois #10201 par ageofempiresz
Je cherche comment récupérer dans un tableau les objects . Le but de ce tableau me permettra de comparaison les services qui ont des utilisateurs.

Je souhaite récupérer les objects sélectionnés ci-dessous en rouge dans un tableau.

[code:1]Add-PSSnapin Quest.ActiveRoles.ADManagement
Get-QADUser -IncludeAllProperties | select-object DN,givenName,SN,mail,telephoneNumber,description[/code:1]

Message édité par: ageofempiresz, à: 7/09/11 11:17

Message édité par: ageofempiresz, à: 7/09/11 11:20<br><br>Message édité par: ageofempiresz, à: 7/09/11 11:20

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

Plus d'informations
il y a 14 ans 8 mois #10215 par ageofempiresz
J'ai trouvé la solution il faillait utilisé where-object pour récupérer les valeurs. split n'est pas adapter pour les objects.

J'ai effectué une recherche si l'utilisateur a un numéro de téléphone. Pour créer un annuaire téléphonique

Voici la modification du script :

[code:1]#Main dir
$MAINDIR = \&quot;\\nom_serveur\partage$\exportAD-user.csv\&quot;
Add-PSSnapin Quest.ActiveRoles.ADManagement
Get-QADUser -IncludeAllProperties | select-object DN,givenName,SN,mail,telephoneNumber,description | Where-Object { $_.telephoneNumber-match \&quot;[0-9]\&quot; } | Export-Csv -Encoding UTF8 -Delimiter `| -NoTypeInformation -Path $MAINDIR[/code:1]

Est-ce-que vous savez comment créer des colonnes pour un fichier csv ?

Message édité par: ageofempiresz, à: 7/09/11 21:16<br><br>Message édité par: ageofempiresz, à: 7/09/11 21:19

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

Plus d'informations
il y a 14 ans 8 mois #10220 par xyz
Réponse de xyz sur le sujet Re:Sélectionner une partie d'un object
ageofempiresz écrit:

J'ai trouvé la solution il faillait utilisé where-object pour récupérer les valeurs.

A lire ta question précédente et ta propre réponse, il me semble qu'il y a comme un pb de formulation dans la rédaction de tes questions.
ageofempiresz écrit:

Est-ce-que vous savez comment créer des colonnes pour un fichier csv ?

Si tu prends le temps de lire la doc, tu trouveras réponse à ta question. Ceci dit un fichier csv, à la différence d'un composant visuel de type grille/grid, ne contient pas de colonnes, mais juste des champs délimités et séparés.
Un indice[code:1] Get-Command -noun csv[/code:1].

Ceci dit, tu as une certaine autonomie dans tes questionnements :)

Tutoriels PowerShell

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

Plus d'informations
il y a 14 ans 8 mois #10226 par ageofempiresz
Merci pour ta réponse.
Je me suis trompé sur la création de colonnes.

Je voudrais trier des objects : SN et givenName.

J'ai recherché en trouvé la commande sort-object.

voici la ligne modifiée dans le script :

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

J'ai une erreur qui s'affiche :

[code:1]Sort-Object : Null parameter. Expecting one of the following types: {System.String, System.Management.Automation.ScriptBlock}.
At X:\scripts\script_repertoire_number.ps1:4 char:222
+ Get-QADUser -IncludeAllProperties | select-object DN,givenName,SN,mail,telephoneNumber,description | Where-Object { $_.telephoneNumber-match \&quot;[0-9]\&quot; } | ForEach-Object
{ $_.DN-match \&quot;CN=\b[^,]*,OU=(.*?),\&quot; } | Sort-Object &lt;&lt;&lt;&lt; $_.SN,$_.givenName | Export-Csv -Encoding UTF8 -Delimiter `| -NoTypeInformation -Path $MAINDIR
+ CategoryInfo : InvalidArgument: (: ) [Sort-Object], NotSupportedException
+ FullyQualifiedErrorId : DictionaryKeyUnknownType,Microsoft.PowerShell.Commands.SortObjectCommand
Les informations ont été transférés[/code:1]<br><br>Message édité par: ageofempiresz, à: 8/09/11 14:59

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

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