2015-12-20 2 views
0

Я использую переменную в PowerShell для получения информации о Active Directory. Переменная не получает значение, которое мне нужно в двойных кавычках. Что я делаю не так?Ошибка в кавычках

переменного отображения правильно, но в Move-AdObject командлете значение является $CN, а не tok12.

Вот код: сообщение

$CN = "tok12" 
$company = "acme" 
$CN 
$company 

Get-ADGroup $CN | Set-ADGroup -Description $company 

Start-Sleep -s 1 

Move-ADObject -Identity "CN=$CN,OU=UnassignedPortalTokens,OU=Portal,OU=testdomain,DC=testdomain,DC=com" -TargetPath "OU=Customers,OU=testdomain,DC=testdomain,DC=com" 

Ошибка:

Get-ADGroup : Cannot find an object with identity: 'Kentest' under: 
'DC=testdomain,DC=com'. 
At C:\PSH\Newport.ps1:13 char:2 
+ Get-ADGroup $company | Set-ADGroup -Description "$token" 
+ ~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo : ObjectNotFound: (Kentest:ADGroup) [Get-ADGroup], ADIdentityNotFoundException 
    + FullyQualifiedErrorId : Cannot find an object with identity: 'Kentest' under: 'DC=testdomain,DC=com'.,Microsoft.ActiveDirectory.Management.Commands.GetADGroup 
+0

Вместо '$ CN' попробовать' $ ($ Cn) ' – xXhRQ8sD2L7Z

+1

Ваш код работал нормально когда я его протестировал. В какой системе вы работаете, и каково точное сообщение об ошибке? –

+0

Я запускаю это на Windows 7 Professional edition. Команда активного каталога проходит, но терпит неудачу, потому что токен не имеет значения. Я могу поместить эту команду в write-host, и она выглядит нормально, по какой-то причине командлет AD не может обрабатывать переменную в кавычках. –

ответ

0

Вопрос остается совершенно неясным, но ОП, похоже, закрепилась вопрос сам:

(. ..) одна из команд была неправильной группой. Другой вопрос переменной был нулевым, и мне пришлось удалить и установить его снова из командной строки - Gary Seven

Смежные вопросы