Question
Comparer user et computer dans active directory
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
Relit ce que je t'ai écris à propos de Out-String.Lol ca y est je suis completement perdu ^^.
J'ai essayé le code suivant :
fred31200 écrit:
Il est à utiliser tel quels, pourj'ai voulu tester avec ton code New-Object PSObject mais je n'ai pas compris comment l'utiliser pour être honnête.
[code:1]
$Description=New-Object PSObject -property @{Description='MOI Même'}
[/code:1]
Le cmdlet New-Object crée un objet de la classe PSObject, celui-ci possédera une propriété nommée Description et son contenu est égale à la chaine 'Moi même'.
Pour aller plus loin sur la notion d'objet, consulte ce tuto .
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Fred
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 22
- Remerciements reçus 0
Lorsque tu écris :
[code:1]$Description=New-Object PSObject -property @{Description='MOI Même'}[/code:1]
Tu indiques en dur dans le code la chaine 'MOI Même' et dans ce cas ca marche si tu met la même chaine dans
[code:1]$UserName=New-Object PSObject -property @{Name='MOI Même'}[/code:1]
Mais si je met a la place de 'MOI Même' les variables '$description' et '$username' que je récupére a partir de
[code:1]$description= Get-ADComputer $env:computername -properties * | select description[/code:1]
et
[code:1]$username= Get-ADUser $env:username -properties * | select Name[/code:1]
Ca ne marche plus.
J'ai saisi l'idée de créer un nouvel objet pour l'utiliser comme je l'entend seulement mon nouvel objet ne récupère pas non plus ma variable d’après mes tests.
Avec tous les codes que j'ai accumulés a vrai dire je ne sais même plus ce que je dois utiliser ou jeter ...Est-ce que je conserve la partie avec $description=Get-AD ou je la remplace par $Description=New-Object PSObject ?
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
Je n'ai pas d'AD sous la main pour te donner LE bon code.Avec tous les codes que j'ai accumulés a vrai dire je ne sais même plus ce que je dois utiliser ou jeter
Il te faut analyser le type des propriétés que tu récupères, quant au contenu je ne le connais pas, je ne peux donc que te proposer du code de test qui fonctionne
...
fred31200 écrit:
OUIEst-ce que je conserve la partie avec $description=Get-AD
Le new-object était pour un test.
Que renvoi ces instructions :
[code:1]
Get-ADComputer $env:computername -properties * |Get-member
Get-ADUser $env:username -properties *|Get-member
[/code:1]
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Fred
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 22
- Remerciements reçus 0
et
[code:1]Get-ADUser $env:username -properties *|Get-member[/code:1]
Me renvoi une liste exhaustive des methodes et propriétes de l'ordinateur et de l'utilisateur.
Dans lesquelles je vois bien Name et Description.
Pour Description j'ai
Pour Name j'aiSystem.String Description (get;set)
Donc sauf erreur de ma part les 2 sont bien sous la forme string?System.String Name (get)
pourtant quand j'ai demandé le type avec
$description.GetType() -is [string]
ca me renvoi false ?
Message édité par: fred31200, à: 20/07/15 17:09<br><br>Message édité par: fred31200, à: 20/07/15 17:09
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
- Messages : 6311
- Remerciements reçus 68
Oui.Donc sauf erreur de ma part les 2 sont bien sous la forme string?
fred31200 écrit:
C'est une erreur de saisie ma part désolé :pourtant quand j'ai demandé le type avec
$description.GetType() -is [string]
ca me renvoi false ?
[code:1]
$description -is [string]
[/code:1]
La méthode GetType() renvoi un objet définissant un type (une classe). Dans notre cas l'opérateur -IS doit porter sur une variable.
Dis moi ce que renvoi ce code:
[code:1]
$description.IndexOf($username, [System.StringComparison]::OrdinalIgnoreCase)
[/code:1]
Si ce n'est pas confidentiel communique moi le contenu des deux variables stp.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Fred
- Auteur du sujet
- Hors Ligne
- Membre junior
-
- Messages : 22
- Remerciements reçus 0
[code:1]$description -is [string][/code:1]
Me renvoi true ^^
et pour
[code:1]$description.IndexOf($username, [System.StringComparison]::OrdinalIgnoreCase)[/code:1]
Ca me renvoi -1
C'est grave docteur ?
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Comparer user et computer dans active directory