http://technet.microsoft.com/en-us/library/ee617236.aspx
[-SearchScope {<Base> | <OneLevel> | <Subtree>}]
Thanks
Webster
From: Heaton, Joseph@Wildlife [mailto:[email protected]]
Sent: Wednesday, January 23, 2013 3:58 PM
To: NT System Admin Issues
Subject: RE: Help with this script
Are OneLevel and SubTree the only options for the SearchScope parameter?
From: Damien Solodow [mailto:[email protected]]
Sent: Wednesday, January 23, 2013 1:18 PM
To: Heaton, Joseph@Wildlife; NT System Admin Issues
Subject: RE: Help with this script
Yep.
The line $OUlist = @(Get-ADOrganizationalUnit -filter * -Credential $cred
-SearchBase $domain.distinguishedName -SearchScope OneLevel -Server
$domain.DNSroot)
Change OneLevel to SubTree
DAMIEN SOLODOW
Systems Engineer
317.447.6033 (office)
317.447.6014 (fax)
HARRISON COLLEGE
From: Heaton, Joseph@Wildlife [mailto:[email protected]]
Sent: Wednesday, January 23, 2013 4:14 PM
To: NT System Admin Issues
Subject: Help with this script
I found this script, to count user objects in all OUs. The report doesn't list
all OUs, so I was wondering if anyone could tell me if it has a limit as to how
deep it will go to count.
Here's the script:
Import-Module activeDirectory
$fqdn = Read-Host "Enter FQDN domain"
$cred = Get-Credential
Write-Host "Contacting $fqdn domain..." -ForegroundColor Yellow
$domain = (get-addomain $fqdn -Credential $cred | select
distinguishedName,pdcEmulator,DNSroot,DomainControllersContainer)
Write-Host "Completed. Enumerating OUs.." -ForegroundColor Yellow
$OUlist = @(Get-ADOrganizationalUnit -filter * -Credential $cred -SearchBase
$domain.distinguishedName -SearchScope OneLevel -Server $domain.DNSroot)
Write-Host "Completed. Counting users..." -ForegroundColor Yellow
for($i = 1; $i -le $oulist.Count; $i++)
{write-progress -Activity "Collecting OUs" -Status "Finding OUs $i"
-PercentComplete ($i/$OUlist.count*100)}
$newlist = @{}
foreach ($_objectitem in $OUlist)
{
$getUser = Get-ADuser -Filter * -Credential $cred -SearchBase
$_objectItem.DistinguishedName -SearchScope Subtree -Server $domain.pdcEmulator
| measure | select Count
for($i = 1; $i -le $getUser.Count; $i++)
{write-progress -Activity "Counting users" -Status "Finding users $i in
$_objectitem" -PercentComplete ($i/$getUser.count*100)}
$newlist.add($_objectItem.Name, $getUser.Count)
}
$newlist > .\OUuserCount.txt
Write-Host "All done!" -ForegroundColor yellow
So, the report that it creates only lists top level OUs under the domain. I
think it does, however, dig down under that to get the count, but just wanted
to make sure.
Thanks,
~ Finally, powerful endpoint security that ISN'T a resource hog! ~
~ <http://www.sunbeltsoftware.com/Business/VIPRE-Enterprise/> ~
---
To manage subscriptions click here:
http://lyris.sunbelt-software.com/read/my_forums/
or send an email to [email protected]
with the body: unsubscribe ntsysadmin