1

会社のベンダー アカウントをクリーンアップするための情報を収集しようとしています。私たちが知りたいことの 1 つは、「彼らのマネージャーはどの部署に所属しているか?」です。

私の小さなスクリプトは現在、他のいくつかの情報を返します。各ユーザーの「マネージャー」属性を収集する必要がある方法を概念化できます。次に、そのユーザーの「部門」属性を調べます。しかし、進むべき道がまったく見えません。

これが私が持っているものです。これは機能しますが、ユーザーのマネージャーの部門は含まれません。

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ループを使用して「各ユーザーのマネージャーについて、そのユーザーの部門を見つける」ようにする必要がありますか?

4

1 に答える 1

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}} | ...
于 2015-12-15T19:23:09.947 に答える