У меня есть файл .CSV, в который я заполняю некоторую информацию о AD. Предполагается, что следующий сценарий должен заполнить «Office» для определенных свойств AD пользователей. Заголовок в файле CSV с разными именами «Office» называется «офис».неожиданный токен 'if' в выражении или инструкции powershell
Другая информация:
Обмен 2013 Гибрид сервер
Форрест Functional Level = 2003 (Just понижены на прошлой неделе старый ДЦ)
Все DC в настоящее время 2012 R2. Мы ценим любые предложения.
Это использовалось для работы с командлетами QADuser, поэтому я просто нашел атрибуты cmdlet/parameter и изменил их.
Новый скрипт, который не работает:
Import-CSV d:\scripts\ExchangeExportQuery.csv | ForEach-Object {$myOff = $_.Office if ($_.DistinguishedName -ne $null -and ($_.DistinguishedName.StartsWith("CN="))) {Get-User -ResultSize 'unlimited' -identity $_.DistinguishedName | foreach-object { Set-User -identity $_.DistinguishedName -Office $myOff}}}
Старый сценарий, который фактически работал на сервере старый обмен 2007 с QAD командлетов:
Import-CSV d:\scripts\ExchangeExportQuery.csv | ForEach-Object {
$myOff = $_.Office
if ($_.DN -ne $null -and ($_.DN.StartsWith("OU="))) {
Get-QADUser -SizeLimit 0 -SearchRoot $_.DN |
foreach-object { Set-QADUser -identity $_.DN -Office $myOff}
Я могу быть далеко здесь и лучше начать с нуля, но любая помощь будет оценена по достоинству.