我在AD中有一些用户的UPN地址设置为User@this.org
。我想更改这些用户,以便他们的UPN看起来像User@that.com
。
我写了一条PS线来找到我这样的用户:
Get-ADUser -LDAPFilter "(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2)(userPrincipalName=*@this.org))" -SearchBase "OU=this,DC=that" | Select SamAccountName
但是我该如何更新那些用户。我知道Set-AdUser
命令,但是我不知道如何将Get-Aduser
的结果输入到其中。
答案 0 :(得分:5)
只需将其通过管道传输到Set-ADUser
:
Get-ADUser -LDAPFilter "(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2)(userPrincipalName=*@this.org))" -SearchBase "OU=this,DC=that" | % {Set-ADUser $_ -UserPrincipalName "that"}
警惕,在整个广告崩溃之前,在测试期间使用-Whatif
。
说明:
%
-foreach的别名
$_
-等于foreach
的每个对象(在Get-ADuser
中找到的每个用户)
-UserPrincipalName "that"
-将给定用户的UPN设置为that