用户经理的退货部门?

时间:2015-12-15 19:08:12

标签: powershell active-directory multiple-users

我正在尝试为我公司的供应商帐户收集一些清理工作的信息。我们想要的一点是“他们的经理在哪个部门?”

我的小脚本现在将返回其他几条信息,我可以概念化你需要为每个用户收集“manager”属性,然后为那个用户查看“department”属性。但我不太明白如何继续。

这就是我所拥有的。这有效,但不包括用户经理的部门:

Get-ADUser -Filter * -SearchBase 'ou=Vendors,ou=Users,dc=corporate,dc=coolguys,dc=org' -Properties GivenName, Surname, Company, Title, Manager, EmailAddress |
     select GivenName, Surname, Company, Title, Manager, EmailAddress |
     Out-GridView

就像一个疯狂的冰雹 - 玛丽我试着回复“manager.department”,就像它是一个变量中的值,但当然PS只是嘲笑我的无能。我是否需要设置包含所有搜索结果的变量,然后使用foreach循环说“为每个用户的经理找到该用户的部门”?

1 个答案:

答案 0 :(得分:2)

department是用户对象的属性。但是,manager属性不包含用户对象,而是包含可分辨名称。要获取所需的属性,您需要检索与manager属性对应的用户对象,并展开其department属性。

... | Select-Object GivenName, Surname, Company, Title, Manager, EmailAddress,
  @{n='ManagerDepartment';e={Get-ADUser $_.Manager -Properties department |
     Select-Object -Expand department}} | ...