Question Comparer user et computer dans active directory

Plus d'informations
il y a 10 ans 8 mois #20513 par Laurent Dardenne
fred31200 écrit:

Lol ca y est je suis completement perdu ^^.
J'ai essayé le code suivant :

Relit ce que je t'ai écris à propos de Out-String.
fred31200 écrit:

j'ai voulu tester avec ton code New-Object PSObject mais je n'ai pas compris comment l'utiliser pour être honnête.

Il est à utiliser tel quels, pour
[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.

Plus d'informations
il y a 10 ans 8 mois #20516 par Fred
J'ai compris que je ne dois pas utiliser out-string ^^ ...et après avoir essayé de comprendre et fait de multiples tests suite a la lecture du tuto ...j'en arrive au mêmes conclusions.
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.

Plus d'informations
il y a 10 ans 8 mois #20518 par Laurent Dardenne
fred31200 écrit:

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

Je n'ai pas d'AD sous la main pour te donner LE bon code.
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:

Est-ce que je conserve la partie avec $description=Get-AD

OUI
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.

Plus d'informations
il y a 10 ans 8 mois #20519 par Fred
[code:1]Get-ADComputer $env:computername -properties * |Get-member[/code:1]
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

System.String Description (get;set)

Pour Name j'ai

System.String Name (get)

Donc sauf erreur de ma part les 2 sont bien sous la forme string?
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.

Plus d'informations
il y a 10 ans 8 mois #20520 par Laurent Dardenne
fred31200 écrit:

Donc sauf erreur de ma part les 2 sont bien sous la forme string?

Oui.
fred31200 écrit:

pourtant quand j'ai demandé le type avec
$description.GetType() -is [string]
ca me renvoi false ?

C'est une erreur de saisie ma part désolé :
[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.

Plus d'informations
il y a 10 ans 8 mois #20521 par Fred
Effectivement maintenant :
[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 ? :cheer:

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

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