【问题标题】:How to display all items in a member from Powershell without "..."如何在没有“...”的情况下从 Powershell 显示成员中的所有项目
【发布时间】:2014-07-03 03:32:07
【问题描述】:

运行以下命令:

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,...}

我不想看到“...”我实际上想看到所有项目。

【问题讨论】:

    标签: powershell


    【解决方案1】:

    使用 Select-Object-ExpandProperty 开关:

    Get-ADUser <username> -Properties MemberOf | select -ExpandProperty MemberOf
    

    当您使用 Select-Object 过滤某些属性时,它会返回一个 PSCustomObject,其中包含所选对象的指定属性(如果选择了多个对象,则返回一个 PSCustomObject 数组)。 -ExpandProperty 只能与单个属性一起使用,对于每个选定的对象,它都会返回包含在指定属性中的对象。

    因此,对于| select MemberOf,返回的是一个 PSCustomObject,其唯一属性是 Get-ADUser 返回的 ADUser 对象的 MemberOf 属性,显示在列表中格式(与列出对象的多个属性时显示结果的样式相同)。

    使用| select -ExpandProperty MemberOf,返回的是ADPropertyCollection 对象,该对象包含在MemberOf 属性(表示成员DN 的字符串集合)中,该对象显示在列表中格式。

    顺便说一句,我删除了| Format-List *,因为在这种情况下它是多余的。

    【讨论】:

    • 不幸的是,您永远不会从阅读帮助中猜到 -ExpandProperty 是您正在寻找的内容,因为该属性的帮助写得非常糟糕 - 怎么样您应该知道“应该尝试扩展该属性”是什么意思吗?顺便说一句,我刚刚注意到原来的答案不准确,我已经更正了。没有 -ExpandPropertySelect-Object 不会返回原始对象类型,它会返回一个 PSCustomObject 以及所选对象的所选属性。
    【解决方案2】:

    Adi Inbar 是正确的。让我扩展一下,如果您遇到问题,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...
    

    【讨论】:

    • 是的,Get-Member 通常有助于弄清楚发生了什么......但你对此的评论不是 :-) 我真的不知道你想在这里传达什么观点尊重@Steven 的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 1970-01-01
    • 2018-04-04
    相关资源
    最近更新 更多