如何在 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 模組,它封裝了名稱翻譯路徑名COM 物件方便在 PowerShell 中使用:

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。

相關內容