none
PowerShell查询对象count值为1的时候不输出内容? RRS feed

  • 问题

  • 写了以下一段PowerShell脚本收集Win2008R2的AD中所有群组的成员数量,将结果按行以“组名<tab>成员数量”的格式输出到文件中。发现所有成员数量为1的组,只输出了组名,没有输出数量。其他成员数量的组都能正常输出数量的,哪怕是空组也会输出一个0。

    Get-ADGroup -Filter * -Properties name, member | ForEach-Object {
        $GroupMembers = Get-ADGroupMember $_
        $Output = $_.Name + "`t" + $GroupMembers.Count
        Out-File -FilePath .\gm.txt -InputObject $Output -Append
    }

    然后尝试手工执行查询了其中一个只有1个成员的组Domain Guests试了一下,结果也是一样(下图)。可以显示出它的成员guest的信息,但显示count属性时却没有输出任何内容。这是什么原因呢?



    2017年6月27日 3:14

答案

  • 您好 Stanley_L,

    Get-ADGroup -Filter * -Properties name, member | ForEach-Object {
        $GroupMembers = Get-ADGroupMember $_
        $Output = $_.Name + "`t" + $GroupMembers.name.Count
        Out-File -FilePath .\gm.txt -InputObject $Output -Append
    }

    请加一个name属性,具体可以看上面我标黑的地方。测试是可以正确输出成员的数量的。

    此致

    Candy


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    • 已标记为答案 Stanley_L 2017年6月27日 8:56
    2017年6月27日 8:31
    版主

全部回复

  • 您好 Stanley_L,

    Get-ADGroup -Filter * -Properties name, member | ForEach-Object {
        $GroupMembers = Get-ADGroupMember $_
        $Output = $_.Name + "`t" + $GroupMembers.name.Count
        Out-File -FilePath .\gm.txt -InputObject $Output -Append
    }

    请加一个name属性,具体可以看上面我标黑的地方。测试是可以正确输出成员的数量的。

    此致

    Candy


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    • 已标记为答案 Stanley_L 2017年6月27日 8:56
    2017年6月27日 8:31
    版主
  • Hi Candy,

    非常感谢!把count加在name属性后面确实结果正确了。

    但还是不明白:

    为什么count加在对象名后面会出现这种不显示1的奇怪现象?

    为什么count要加在name后面——count难道不是对象的属性吗?

    能麻烦你再详细解释一下吗?谢谢!

    Stanley

    2017年6月27日 8:39
  • 您好 Stanley_L

    >>为什么count加在对象名后面会出现这种不显示1的奇怪现象?

    我们计算的是name,而不是对象的数量,如果不加上的话,就会出现这个现象

    >>为什么count要加在name后面——count难道不是对象的属性吗?

    是属性,但是被系统隐藏了,是默认属性。可以看下面的例子:

    此致

    Candy


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    2017年6月27日 8:53
    版主