问题描述
我正在尝试将以下计算机移至其他OU 我有这样的csv:
我正在尝试使用以下代码移动它们:
$computers = Import-Csv 'C:\Reports\Win7.csv'
foreach ($computer in $Computers) {
Move-Adobject -Identity $computer.Name -TargetPath "OU=disabled,OU=Computers,OU=Resources,DC=hello,DC=world,DC=loc"
}
但是我不知道为什么会出现以下错误:
Move-Adobject : Cannot find an object with identity: 'WSJ0HZ45J' under:
这很奇怪,因为我可以在AD中找到这台机器。
有什么建议吗?
更新
我想我知道为什么它不起作用
我做了以下工作,对我有帮助!
$computers = Import-Csv 'C:\Reports\Win7.csv'
$BaSEOU = "OU=disabled,OU=DataManagement,DC=loc"
foreach ($computer in $computers) {
Get-adcomputer $computer.Name | Move-Adobject -TargetPath $BaSEOU
}
仍然感谢您的帮助!
解决方法
您正在为 -Identity 参数提供一个规范的计算机名称。对于Microsoft, -Identity 参数唯一可接受的值为:
- 专有名称
- GUID(objectGUID)
请将代码段更改为计算机名称的DN值,它应该可以工作。下面是一台基于我对Active Directory中位置的猜测的示例。在脚本中相应地将计算机名称更改为变量。
Move-ADObject -Identity "DN=WSJ0HZ45JOU,OU=Computers,OU=Resources,DC=hello,DC=world,DC=loc" -TargetPath "OU=Disabled,DC=loc"