如何使用 powershell 在 AD 中创建一个包含 OU 列表的 table
How to create a table with a list of OU in AD using powershell
我的活动目录中有许多子文件夹,我想计算那里的用户数。我找到了一种使用 powershell 和 Get ADUser 命令的方法,但是我认为必须有一种方法可以优化它以构建一个包含我想要的所有子文件夹的 table。
通常以下脚本对我有用,但我不知道我是否可以递归遍历所有子文件夹并最终创建一个包含每个子文件夹的用户数的 csv。
echo "ACC - total:" (Get-ADUser -Filter * -SearchBase 'OU=Users,OU=ACC,OU=Clients,DC=SSICloud,DC=local' ).count
echo "All Car - total:" (Get-ADUser -Filter * -SearchBase 'OU=Users,OU=All Car,OU=Clients,DC=SSICloud,DC=local' ).count
结果:
ACC - Total:
10
All Car - Total:
11
谢谢
Get-ADOrganizationalUnit
can search recursively through all OUs in your Domain, you can then pass the DistinguishedName
of the OU as argument to the -SearchBase
parameter of Get-ADUser
获取报告:
Get-ADOrganizationalUnit -Filter * -Properties CanonicalName | ForEach-Object {
[pscustomobject]@{
OUCanonicalName = $_.CanonicalName
TotalUserCount = @(Get-ADUser -Filter * -SearchBase $_.DistinguishedName).Count
}
} | Export-Csv .... -NoTypeInformation
我的活动目录中有许多子文件夹,我想计算那里的用户数。我找到了一种使用 powershell 和 Get ADUser 命令的方法,但是我认为必须有一种方法可以优化它以构建一个包含我想要的所有子文件夹的 table。
通常以下脚本对我有用,但我不知道我是否可以递归遍历所有子文件夹并最终创建一个包含每个子文件夹的用户数的 csv。
echo "ACC - total:" (Get-ADUser -Filter * -SearchBase 'OU=Users,OU=ACC,OU=Clients,DC=SSICloud,DC=local' ).count
echo "All Car - total:" (Get-ADUser -Filter * -SearchBase 'OU=Users,OU=All Car,OU=Clients,DC=SSICloud,DC=local' ).count
结果:
ACC - Total:
10
All Car - Total:
11
谢谢
Get-ADOrganizationalUnit
can search recursively through all OUs in your Domain, you can then pass the DistinguishedName
of the OU as argument to the -SearchBase
parameter of Get-ADUser
获取报告:
Get-ADOrganizationalUnit -Filter * -Properties CanonicalName | ForEach-Object {
[pscustomobject]@{
OUCanonicalName = $_.CanonicalName
TotalUserCount = @(Get-ADUser -Filter * -SearchBase $_.DistinguishedName).Count
}
} | Export-Csv .... -NoTypeInformation