2015-10-27 44 views
0
$target = Get-ADOrganizationalUnit -LDAPFilter "OU=Sales - Clothes,OU=Mall,OU=Computers,OU=Site2364" 
get-adcomputer computername1 | Move-ADObject -TargetPath $target.DistinguishedName 

我OU有(销售收入 - 衣服)的空间移动计算机使用PowerShell

出现的错误说

Move-ADObject : Cannot validate argument on parameter 'TargetPath'. The argument is null or empty. Provide 
an argument that is not null or empty, and then try the command again. 
At line:2 char:53 
+ ... mputer PCJ21584 | Move-ADObject -TargetPath $target.DistinguishedName 
+             ~~~~~~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : InvalidData: (:) [Move-ADObject], ParameterBindingValidationException 
    + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.ActiveDirectory.Management.Command 
    s.MoveADObject 
+0

我只是想通出。我需要使用-Identity而不是-LDAPFilter –

回答

1

使用-Identity而不是LDAPFilter得到预期的结果

$target = Get-ADOrganizationalUnit -Identity"OU=Sales - Clothes,OU=Mall,OU=Computers,OU=Site2364" 
get-adcomputer computername1 | Move-ADObject -TargetPath $target.DistinguishedName 
0

LDAPFilter可能不是你想要的参数。如果您知道组织单位的名称,你可以使用Filter按名称查找,即:

Get-ADOrganizationalUnit -Filter {Name -like "Sales - Clothes"} 

或者您可以使用该cmdlet管道输送到Where-Object的cmdlet:

Get-ADOrganizationalUnit -Filter * | ` 
    Where-Object {$_.DistinguishedName -match "OU=Sales - Clothes,OU=Mall,OU=Computers"} 
+0

如果存在另一个包含相同容器的Site(如Site2244),我将如何知道它将以哪一个为结尾? OU = Sales - Clothes,OU = Mall,OU = Computers,OU = Site2244 –

+0

@softwareisfun在这种情况下,您将使用'-SearchBase'来只查看一个容器 – Matt

相关问题