如何在 powershell 中反转更改父容器?

如何在 powershell 中反转更改父容器?

我需要提取 AD 的所有用户及其所有信息,并添加一个带有“父容器”字段的字段反转

例如:

实际父容器字段:“OU=Users,OU=Area,DC=Company,DC=com”

所需格式父容器字段:Company.com\Area\Users

这是我现在的代码

Get-ADUser -Filter * -Properties * | select *,@{l='Parent';e={([adsi]"LDAP://$($_.DistinguishedName)").Parent}} | export-csv \\server\folder\usersADps.csv

谢谢

答案1

不久前我写了一个 PowerShell 模块,它封装了姓名翻译路径名在 PowerShell 中可轻松使用的 COM 对象:

https://github.com/Bill-Stewart/PowerShell-ADName

安装此模块后,您可以编写如下代码:

Get-ADUser -LDAPFilter "(name=*)" |
  Select-Object @{Name = "Path"; Expression = {$_.DistinguishedName | Get-ADName -Format Parent | Convert-ADName Canonical}},
  Name

此示例用于Select-Object创建一个计算财产称为Path以规范名称格式表达的每个对象的 AD 路径。

在脚本块内部Expression =脚本块是花括号内的代码{ }),本例使用:

  • $_.DistinguishedName- 这是DistinguishedName每个用户的属性Get-ADUser
  • Get-ADName -Format Parent- 专有名称的父位置
  • Convert-ADName Canonical- 规范格式的父路径

此命令创建具有PathName属性的输出;例如:

Path                     Name
-----------------------  ---------
myorg.local/Container A  Ken Dyer
myorg.local/Container B  Lynn Dyer

... ETC。

相关内容