2013-06-18 1 views
0

Я пытаюсь вытащить из 2-х колонок, используя скрипт ниже, но продолжаете получать сообщение об ошибке:Как данные отличаются в CSV

Set-DistributionGroup: Операция не может быть выполнена, поскольку объект «@ {д lgroup = группа1; менеджер = user1} .dlgroup»не может быть найден на "сервере"

CSV файл стандартная группа, пользователь group2, user2

import-csv "dls.csv" | foreach { 
    set-distributiongroup -identity "$_.dlgroup" -managedby "$_.manager" 
} 

что @ {и почему выход показывает, как @ {d lgroup = group1; менеджер = user1} .dlgroup? я попытался с помощью двойных кавычек с той же проблемой

ответ

0

Вы, возможно, придется использовать Подвыражения (нет возможности проверить сейчас), так:

Import-CSV "dls.csv" | ForFach { 
    Set-Distributiongroup -identity "$($_.dlgroup)" -managedby "$($_.manager)" 
} 
+0

Удивительный! это сработало. У меня был другой вопрос по той же теме. Использование сценария ниже; $ office = get-aduser "samaccountname" -properties * | выберите офис Я уже пробовал $ folder = get-aduser "samaccountname" -properties * | выберите «$ (office)» и @ {n = 'office'; e = {$ _. office -replace '^ office =' $ 1 '}} ни один из которых не удаляет @ {office =} Как удалить @ {} из результата переменной? subexpressions, похоже, не работают в этом случае – user2402045

+0

См. Ответ на [Ваш другой вопрос] (http://stackoverflow.com/questions/17149559/how-to-format-output-of-expanded-variable/17189271#17189271) – AndyMeFul

2

Удалить кавычки:

set-distributiongroup -identity $_.dlgroup -managedby $_.manager 

Когда вы кладете его в кавычки, PowerShell расширяет переменные внедренные в двойных кавычках, и то, что вы видите (например, @ {. ..}) сообщает, что $ _ - объект с двумя свойствами.

+0

ребята, спасибо за вашу помощь. Я ценю это. – user2402045

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

  • Нет связанных вопросов^_^