.someproperty%20zeigt%20kein%20Ergebnis%20an.png)
Ich versuche, nach einzelnen Eigenschaften eines AD-Benutzers zu suchen, wenn ich
(Get-ADUser $userName).$targetProperty
Ich bekomme nichts, wenn ich renne
Get-ADUser $userName | select $targetProperty
Ich bekomme die Eigenschaft und ein Leerzeichen darunter. ABER wenn ich renne.
Get-ADUser $user -Properties *
Ich erhalte die vollständige Liste und wenn ich mir $targetProperty ansehe, ist dort bereits ein Wert vorhanden. Meine Umgebung ist 1 DC, sie ist lokal und ich bin im Administratormodus.
Antwort1
Dies hängt von der Zieleigenschaft ab, die Sie abrufen möchten. Wenn es sich nicht um eine der Eigenschaften im Standardsatz handelt (die, die Sie erhalten, wenn Sie einfach ausführen Get-ADUser testuser
), befindet sie sich nicht im Ergebnissatz, sodass Sie an keiner anderen Stelle in Ihrem Befehl darauf zugreifen können.
Hier sind die Standardeigenschaften.
DistinguishedName : CN=Test User,CN=Users,DC=domain,DC=local
Enabled : True
GivenName : Test
Name : Test User
ObjectClass : user
ObjectGUID : 94916bd1-008e-409f-a1b3-eaXXXXXX266e
SamAccountName : TestUser
SID : S-1-5-21-23XXXXXX88-41XXXXX83-1941XXXX34-32584
Surname : User
UserPrincipalName : [email protected]
Nehmen wir an, die gewünschte Eigenschaft ist Title
. Ihr erster Befehl lautet also:
(Get-ADUser testuser).Title
Title
ist nicht im Standardsatz der Eigenschaften enthalten, daher enthält der Teil in Klammern keine Title
Eigenschaft und das Ergebnis des kombinierten Befehls ist nichts.
Zweiter Versuch:
Get-ADUser testuser | select Title
Damit erhalten Sie zwar das Wort „Titel“ als Spaltenüberschrift, dafür aber noch immer keinen Wert, weil der erste Teil des Befehls noch immer keine Title
Eigenschaft in den Ergebnissen beinhaltet.
Dritter Versuch:
Get-ADUser testuser -Properties *
Aha! Das kommt der Sache schon näher. Es umfasst die Title
Immobilie und eine ganze Reihe anderer Dinge, die Sie im Moment nicht interessieren.
Vierter Versuch:
(Get-ADUser testuser -Properties *).title
Das ist alles! Diese Kombination ruft alle Eigenschaften des Benutzers ab (einschließlich Title
) und zeigt Ihnen dann nur die Title
Eigenschaft an.
Optional:Sie können es etwas beschleunigen, indem Sie nicht nach den über 100 Eigenschaften fragen, die -Properties *
Sie erhalten, sondern nur die Standardeigenschaften plus Title
Folgendes erhalten:
(Get-ADUser testuser -Properties Title).Title
Antwort2
Ich habe festgestellt, dass ich mit dem Folgenden die Informationen abrufen kann, aber warum funktionierte es mit meinen anderen Befehlen nicht?
(Get-ADUser $user -Properties *).$targetProperty