Question
Sélectionner une partie d'un object
- ageofempiresz
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 1
il y a 14 ans 8 mois #10195
par ageofempiresz
Sélectionner une partie d'un object a été créé 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.
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.
- ageofempiresz
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 1
il y a 14 ans 8 mois #10199
par ageofempiresz
Réponse de ageofempiresz sur le sujet Re:Sélectionner une partie d'un object
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]
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.
- ageofempiresz
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 1
il y a 14 ans 8 mois #10201
par ageofempiresz
Réponse de ageofempiresz sur le sujet Re:Sélectionner une partie d'un object
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
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.
- ageofempiresz
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 1
il y a 14 ans 8 mois #10215
par ageofempiresz
Réponse de ageofempiresz sur le sujet Re:Sélectionner une partie d'un object
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 = \"\\nom_serveur\partage$\exportAD-user.csv\"
Add-PSSnapin Quest.ActiveRoles.ADManagement
Get-QADUser -IncludeAllProperties | select-object DN,givenName,SN,mail,telephoneNumber,description | Where-Object { $_.telephoneNumber-match \"[0-9]\" } | 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
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 = \"\\nom_serveur\partage$\exportAD-user.csv\"
Add-PSSnapin Quest.ActiveRoles.ADManagement
Get-QADUser -IncludeAllProperties | select-object DN,givenName,SN,mail,telephoneNumber,description | Where-Object { $_.telephoneNumber-match \"[0-9]\" } | 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.
- xyz
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 69
il y a 14 ans 8 mois #10220
par xyz
Tutoriels PowerShell
Réponse de xyz sur le sujet Re:Sélectionner une partie d'un object
ageofempiresz écrit:
ageofempiresz écrit:
Un indice[code:1] Get-Command -noun csv[/code:1].
Ceci dit, tu as une certaine autonomie dans tes questionnements
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.J'ai trouvé la solution il faillait utilisé where-object pour récupérer les valeurs.
ageofempiresz écrit:
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.Est-ce-que vous savez comment créer des colonnes pour un fichier csv ?
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.
- ageofempiresz
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 1
il y a 14 ans 8 mois #10226
par ageofempiresz
Réponse de ageofempiresz sur le sujet Re:Sélectionner une partie d'un object
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 \"[0-9]\" } | ForEach-Object { $_.DN-match \"CN=\b[^,]*,OU=(.*?),\" } | 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 \"[0-9]\" } | ForEach-Object
{ $_.DN-match \"CN=\b[^,]*,OU=(.*?),\" } | Sort-Object <<<< $_.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
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 \"[0-9]\" } | ForEach-Object { $_.DN-match \"CN=\b[^,]*,OU=(.*?),\" } | 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 \"[0-9]\" } | ForEach-Object
{ $_.DN-match \"CN=\b[^,]*,OU=(.*?),\" } | Sort-Object <<<< $_.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.044 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Sélectionner une partie d'un object