1
是否有可能根據OU獲得屬於特定組的成員數?當我運行下面的代碼時,如果只有一個OU的值爲3,其餘的值應爲0,則每個OU的值爲3。它正在運行Get-ADGroupMember -Identity「Test_Group」)。計算整個活動目錄結構,而不僅僅是針對每個OU?獲取活動目錄組成員的數量?
import-module activedirectory
foreach ($ou in Get-ADOrganizationalUnit -filter * -SearchScope 1){
$computers = 0 + (get-adcomputer -filter * -searchbase $ou.distinguishedname).count
$ou | add-member -membertype noteproperty -name Computers -value $computers -force
Foreach ($Member in $ou){
(Get-ADGroupMember -Identity 「Test_Group」).count
}
$ou | select name,computers
}
你的foreach循環沒有任何意義。你正在運行一個總是要多次返回相同結果的命令,並且與用於建立foreach循環的變量無關。 – 2014-09-02 12:18:38
我不知道我還能做什麼呢?抱歉,我是新的PowerShell – user1342164 2014-09-02 12:21:03
沒關係。那麼你只需要刪除嵌套的foreach循環($ Ou中的$ Member)並從該腳本塊中取出該部分,並將其放在主foreach循環之外,因爲沒有必要反覆運行該循環。要做到這一點,更好的方法是首先獲取組成員資格,從而爲每個成員提供DN,以便過濾那些與您所關心的OU不匹配的數據,並計算剩餘的數量。 – 2014-09-02 12:32:02