2016-08-02 2 views
2

Я ищу способ указать, сколько раз свойство AD, соответствующее определенному значению, появляется против каждого пользователя.PowerShell Get-ADUser - Оценка атрибутов

В частности - пользователи нашего AD имеют пользовательский атрибут, отличающий их компанию. Мне нужно запустить ежемесячные отчеты, в которых будет отображаться список всех компаний и количество пользователей.

Это так близко, как у меня есть, но это не удобно для нашей учетной записи.

import-csv c:\HostedCompanyList.csv -header ID | 
foreach { 
$total = (get-aduser -filter "(extensionattribute1 -eq '$($_.ID)') -and (extensionattribute2 -eq 'billed')" -properties *).count 
write-host $total $_.ID 
} 

Это содержание HostedCompanyList.csv

ID 
Company1 
Company2 
Company3 

Мой вывод показывает, как `

35 Company1 
12 Company2 
27 Company3 

Я хотел бы выводить эту информацию в формате CSV или HTML-файл, в отличие для отображения его в окне PS.

  • Я ценю, что это, скорее всего, очень длинный изгиб способа выполнения этого запроса - возможно, я упустил гораздо более простой метод?

  • Бонусные баллы, если есть способ, которым я могу это сделать, без необходимости импортировать CSV-файл вообще, - это избавило бы вас от необходимости добавлять дополнительные записи в этот список, когда новые «компании» будут добавлены или убраны!

Благодарим за предоставленную помощь.

ответ

1

тестировался, так как я не имеют те же атрибуты расширения, но эту форму:

  • запросов всех отфильтруйте в счетах людей
  • group-object по названию фирмы
  • выберите свойства и экспорт в CSV

должен работать с одним запросом, без текстового файла для чтения и экспорта csv.

$filter = "extensionattribute2 -eq 'billed'" 
$users = Get-ADUser -filter $filter -Property extensionattribute1, extensionattribute2 

$groups = $users | Group -Property extensionattribute1 
$groups | select Count, Name | Export-Csv out.csv -notypeinformation 
+0

@ mklement0 да, но это будет сделать блок кода имеет горизонтальную полосу прокрутки, а затем сделать вторую линию несбалансированной и короткой, а затем толкать все это в стороне многострочного однострочника который будет пугающим и .. .;) – TessellatingHeckler

+0

_laughing out loud_ при этом объяснении ... – sodawillow

+1

@ mklement0 это аккуратный подход, я отредактировал это в - спасибо – TessellatingHeckler

Смежные вопросы