运行以下命令:
Get-ADUser <username> -properties MemberOf | select MemberOf | Format-List *
结果是这样的
MemberOf : {CN=XXX,OU=xxx,OU=xxx,DC=xxx,DC=com, CN=XXX,OU=xxx,OU=xxx,DC=xxx,DC=com,CN=XXX,OU=xxx,OU=xxx,DC=xxx,DC=com,...}
我不想看到“.”我真的想看看所有的东西。
发布于 2014-07-02 07:57:56
使用Select-Object's -ExpandProperty交换机:
Get-ADUser <username> -Properties MemberOf | select -ExpandProperty MemberOf
当您使用 selected 对某些属性进行筛选时,它返回一个包含所选对象的指定属性的PSCustomObject (如果选择了多个对象,则返回一个PSCustomObjects数组)。对于只能与单个属性一起使用的-ExpandProperty,,对于所选的每个对象,它都返回指定属性中包含的对象。
因此,使用| select MemberOf
,返回的是一个PSCustomObject,其唯一属性是Get- ADUser 返回的ADUser对象的MemberOf属性,该属性以列表格式显示(如果列出对象的多个属性,则显示结果的样式相同)。
使用| select -ExpandProperty MemberOf
,返回的是ADPropertyCollection对象,它包含在MemberOf属性中(代表成员的DNs的字符串集合),这是以列表格式显示的对象。
顺便说一句,我删除了| Format-List *
,因为在这种情况下它是多余的。
发布于 2014-07-02 11:32:07
艾迪·英巴是对的。让我详细介绍一下,如果您有问题,通常get-member
对于了解正在发生的事情非常有用。
PS C:\> ipmo ActiveDirectory
PS C:\> Get-ADUser testuser42 | select memberof | gm
TypeName: Selected.Microsoft.ActiveDirectory.Management.ADUser
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
memberof NoteProperty Microsoft.ActiveDirectory.Management.ADPropertyValueCollection memberof=Microsoft.ActiveDir...
https://stackoverflow.com/questions/24535590
复制