在PowerShell中设置ADObject错误

在PowerShell中设置ADObject错误,powershell,Powershell,我创建了一个脚本,以便在新用户启动时复制现有用户 我休假了两个星期,回来后它就不起作用了——没有人动剧本 Get-ADUser -LDAPFilter "(UserPrincipalName=copy_me@test.com)" -Properties Description, physicalDeliveryOfficeName, StreetAddress, PostOfficeBox, State, st, l, PostalCode, co, c, Pager, Department,

我创建了一个脚本,以便在新用户启动时复制现有用户

我休假了两个星期,回来后它就不起作用了——没有人动剧本

Get-ADUser -LDAPFilter "(UserPrincipalName=copy_me@test.com)" -Properties Description, physicalDeliveryOfficeName, StreetAddress, PostOfficeBox, State, st, l, PostalCode, co, c, Pager, Department, Company, Manager, MemberOf | ForEach-Object {Set-ADObject -Identity "CN=New User,OU=Our-Users,DC=Test,DC=Com" -Replace @{Description="$($_.Description)";physicalDeliveryOfficeName="$($_.physicalDeliveryOfficeName)"; StreetAddress="$($_.StreetAddress)"; PostOfficeBox="$($_.PostOfficeBox)"; st="$($_.st)"; l="$($_.l)"; PostalCode="$($_.PostalCode)"; co="$($_.co)"; c="$($_.c)"; Pager="$($_.Pager)"; Department="$($_.Department)"; Company="$($_.Company)"; Manager="$($_.Manager)"; OtherTelephone=" 8823"}} 
powershell显示的错误为:

    Set-ADObject : replace
At C:\Windows\System32\WindowsPowerShell\v1.0\user-process\copy-user.ps1:2 char:271
+ Get-ADUser -LDAPFilter "(UserPrincipalName=copy_me@test.com)"
 -Properties Description, physicalDeliveryOfficeName, StreetAddress, PostOffice
Box, State, st, l, PostalCode, co, c, Pager, Department, Company, Manager, Memb
erOf | ForEach-Object {Set-ADObject <<<<  -Identity "cn=New User,ou=our-users,dc=test,dc=com" -Replace @{Description="$($_.D
escription)";physicalDeliveryOfficeName="$($_.physicalDeliveryOfficeName)"; Str
eetAddress="$($_.StreetAddress)"; PostOfficeBox="$($_.PostOfficeBox)"; st="$($_
.st)"; l="$($_.l)"; PostalCode="$($_.PostalCode)"; co="$($_.co)"; c="$($_.c)";
Pager="$($_.Pager)"; Department="$($_.Department)"; Company="$($_.Company)"; Ma
nager="$($_.Manager)"; OtherTelephone=" 8823"}}
    + CategoryInfo          : InvalidOperation: (cn=Test User...,dc=test,d
   c=com:ADObject) [Set-ADObject], ADInvalidOperationException
    + FullyQualifiedErrorId : replace,Microsoft.ActiveDirectory.Management.Com
   mands.SetADObject
设置对象:替换
在C:\Windows\System32\WindowsPowerShell\v1.0\user process\copy user.ps1:2 char:271
+获取ADUser-LDAPFilter“(UserPrincipalName=copy_me@test.com)"
-属性描述、physicalDeliveryOfficeName、街道地址、邮局
邮箱,州,st,l,邮政编码,co,c,传呼机,部门,公司,经理,成员

erOf | ForEach Object{Set ADObject您发布的错误似乎不明确:

 ForEach-Object {Set-ADObject <<<<  -Identity "cn=New User,

“测试用户”是从哪里来的?

结果是,我复制的用户没有输入街道地址

在输入现有用户的街道地址后,命令完成,用户数据被复制


感谢mjolinor的输入:)

帮助台运行一个批处理文件,该文件收集新用户名、用户名和要复制的用户等信息。此批处理将get aduser写入ps1文件,该文件由我的pc上的计划任务执行(因为我有权限和powershell),VLIDOperation应读取“(cn=new User…,”-我从错误中删除了用户的实际名称。显然不应该中途中断!它在抱怨找不到该帐户。如果我使用的用户不存在,我会得到ObjectNotFound:(cn=…但当它是一个确实存在的用户时,InvalidOperation:(cn=…这将很难诊断为失明。你有可能连接到RODC吗?
+ CategoryInfo          : InvalidOperation: (cn=Test User...,