2013-07-03 76 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} –