#powershell #windows-server-2019
#powershell #windows-server-2019
Вопрос:
Мне нужно создать отчет из Active Directory. Мне нужно предоставить список всех отделов и численность персонала на отдел. Но сценарий не сработал. У меня Windows server 2019 и powershell 5.1
Import-Module ActiveDirectory
$Departments = Get-ADUser -Filter * -Property Department | Select-Object -ExpandProperty Department -Unique
Write-Host List of Departments and Number of Users per Department ... -ForegroundColor Green
Write-Host
foreach ($Department in $Departments) {
Write-Host = Users in $Department =amp;gt; (Get-ADuser -Filter * -Property Department | Where-Object {$_.Department -like "$Department"}).count -ForegroundColor yellow
}
Write-Host
Write-Host Total Users in Active Directory : (Get-ADUSer -Filter *).count -BackgroundColor red -ForegroundColor white
Write-Host
$greenCheck = @{
Object = [Char]8730
ForegroundColor = 'Green'
NoNewLine = $true
}
Write-Host "Report on Users and Departments ... " -NoNewline
Start-Sleep -Seconds 1
Write-Host @greenCheck
Write-Host " (Completed)" -ForegroundColor red ```
Ответ №1:
это можно сделать в одной строке с помощью Group-Object
Get-ADUser -Filter {Enabled -eq $True} -Properties Department | Group-Object -Property Department | Select-Object Count,Name | Sort-Object Count -Descending