Powershell - 在一个表中合并结果

Powershell - 在一个表中合并结果

我是 powershell 新手。

我正在尝试创建一份显示即将过期的 AD 帐户的报告。

报告应包括用户名、帐户到期日期和经理。

到目前为止我有以下信息:

$users = Search-ADAccount -AccountExpiring -TimeSpan "7" | Select-Object Name,AccountExpirationDate | Sort-Object AccountExpirationDate

$manager = Search-ADAccount -AccountExpiring -TimeSpan "7" | Get-aduser    -Properties Manager | Select-Object @{n="ManagerName";e={(Get-ADUser -Identity $_.Manager -Properties displayName).DisplayName}}

有什么办法可以将结果合并到一张表中吗?

答案1

偷懒吧,只需Manager在第一次传递时获取属性,然后通过管道将其转换为计算属性。

Search-ADAccount -AccountExpiring -TimeSpan "7" |
  Get-ADUser -Properties Name, AccountExpirationDate, Manager |
    Select-Object Name, AccountExpirationDate, @{ name = 'Manager'; expression = { (Get-ADuser $_.Manager -Properties displayName).displayName } } |
      Sort-Object AccountExpirationDate

相关内容