标题基本上说明了一切。在创建用户的过程中,我还希望将用户设置为我们为OU记录的地址。目前,我们在表单上接受用户输入,这造成了一些混乱,现在需要清理。
答案 0 :(得分:1)
您可以执行以下操作:
$user = Get-ADUser SomeUserId
$StreetAddress = Get-ADOrganizationalUnit ($user.DistinguishedName -replace '^.*?(?=OU=|DC=)') -Properties StreetAddress |
Select-Object -Expand StreetAddress
$user | Set-ADUser -StreetAddress $StreetAddress
您可以通过删除值的DistinguishedName
部分来从CN=Name
属性中导出用户的OU。 ^.*?(?=OU=|DC=)
匹配字符串的开头(^
)和所有字符,直到第一个OU=
或DC=
之前。 (?=)
是一个积极的前瞻,只是从当前位置向前看。如果先行条件为真,则匹配继续。 -replace
运算符将从输出中删除那些匹配的字符。