我正在寻找一种使用Set-ADuser将值附加到现有属性末尾的方法。
到目前为止,我已经:(因为敏感性而省略了我的过滤器)
Get-ADUser -Filter (<filter>) -Properties Name,DisplayName,EmployeeID,SAMAccountName | ? {$_.Samaccountname.length -eq 5} | Set-ADUser <???>
我一直在寻找一种只追加到employeeID属性而不会覆盖当前值的方法。如果有另一种方法可以实现这一点,我很想知道如何。
答案 0 :(得分:0)
因此,使用Set-ADUser,您可以将-replace与哈希表一起使用。因此,通过循环运行结果,在每个循环上为其EmployeeID设置哈希表=现有的加上任何新文本,并设置帐户以替换哈希表中的数据。像这样:
Get-ADUser -Filter (<Filter>) |?{$_.SAMAccountName.Length -eq 5} | %{$HT = @{};$HT.add("EmployeeID", "$($_.EmployeeID)AdditionalText");Set-ADUser $_.SAMAccountName -Replace $HT}
答案 1 :(得分:0)
这将完成它,我对其进行了测试并使其完美运行:只需将信息替换为所需的属性即可:
Import-Module ActiveDirectory
$j=Read-Host "Enter the samaccountname"
$i = Get-ADUser $j -Properties info | %{ $_.info}
Set-ADUser $j -Replace @{info="$($i) `r`n Account Disabled for O365 Cleanup"}
来源:https://gallery.technet.microsoft.com/scriptcenter/Powershell-Append-Info-5f613638