2013-07-03 71 views
0

我写了下面的脚本来返回域中所有组织单位的名称。计算Powershell数组中的行数

我希望脚本通过计算返回的行数来告诉我最后的空OU的总数。我尝试将$array分配给New-Object,并在脚本末尾添加各种版本的$array.count| Measure-Object,但全部返回0

Get-ADOrganizationalUnit -Filter * | 
foreach { 
    $o = Get-ADObject -filter * -searchbase $_.distinguishedname -searchscope 1 
    $total = ($o | Measure-Object).Count 
    New-Object psobject -Property @{ 
     Name=$_.distinguishedname 
     } | 
     where-object {$total -le "0"} 
    } 

回答

1
$ou = Get-ADOrganizationalUnit -Filter * | 
Where-Object { -not (Get-ADObject -SearchBase $_.DistinguishedName -Filter * -SearchScope OneLevel) } 


# get the count 
$ou|measure 

$list OUs 
$ou 
+0

与往常一样,你做的工作一半的代码,你的答案是正确的金钱,所以我会接受这个作为答案。但是,我没有想到它会很好。看到我希望在脚本中保持一定的灵活性,以防我的同事想要查找OU中只有一对OU的对象。 有没有一种方法可以在脚本中保留'-le“0”'或类似内容,以便可以更改搜索的对象数量? – idarryl

+1

谢谢,我geuss你可以做:哪里{@(Get-ADObject -SearchBase $ _。DistinguishedName -Filter * -SearchScope OneLevel).Count -le $ number} –