none
работа с Import-CSV. Фильтрация по фамилии (surname) RRS feed

  • Вопрос

  • Всем доброго дня! 

    Подскажите, как правильно написать фильтр по фамилии для учетных записей AD.

    Есть csv типа:

    Surname

    Иванов

    Петров

    Сидоров

    Скрип: 

    Import-Csv '.\Клиентский отдел.csv' | ForEach-Object {Get-ADUser -Filter {???}} 

    6 февраля 2014 г. 9:55

Ответы

  • Import-Csv '.\Клиентский отдел.csv' | ForEach-Object {
    	Get-ADUser -Filter "sn -eq '$($_.SurName)'"
    }	
    

    • Предложено в качестве ответа Vector BCOModerator 6 февраля 2014 г. 10:48
    • Помечено в качестве ответа KazunEditor 6 февраля 2014 г. 12:35
    6 февраля 2014 г. 10:23
    Отвечающий
  • Спасибо! работает!

    А можно подробней расписать синтаксис: 

    "sn -eq '$($_.SurName)'"
    Не совсем понятны манипуляции с переменными.

    sn - атрибут содержит фамилию, если указал администратор -  http://msdn.microsoft.com/en-us/library/cc220897.aspx

    -eq : оператор сравнения(равно)

    $_ - текущая переменная в конвейере

    $_.SurName - свойство SurName переменной

    "$($_.SurName)" - для раскрытия переменной в строке - используется конструкция "$($variable)"

    "sn -eq '$($_.SurName)'" - в конечном итоге даст "sn -eq 'Сидоров'" и т.д.

    Подробнее в справке - about_ActiveDirectory_Filter


    • Помечено в качестве ответа Жуков Иван 6 февраля 2014 г. 14:09
    6 февраля 2014 г. 10:44
    Отвечающий

Все ответы

  • Import-Csv '.\Клиентский отдел.csv' | ForEach-Object {
    	Get-ADUser -Filter "sn -eq '$($_.SurName)'"
    }	
    

    • Предложено в качестве ответа Vector BCOModerator 6 февраля 2014 г. 10:48
    • Помечено в качестве ответа KazunEditor 6 февраля 2014 г. 12:35
    6 февраля 2014 г. 10:23
    Отвечающий
  • Спасибо! работает!

    А можно подробней расписать синтаксис: 

    "sn -eq '$($_.SurName)'"
    Не совсем понятны манипуляции с переменными.
    6 февраля 2014 г. 10:33
  • Спасибо! работает!

    А можно подробней расписать синтаксис: 

    "sn -eq '$($_.SurName)'"
    Не совсем понятны манипуляции с переменными.

    sn - атрибут содержит фамилию, если указал администратор -  http://msdn.microsoft.com/en-us/library/cc220897.aspx

    -eq : оператор сравнения(равно)

    $_ - текущая переменная в конвейере

    $_.SurName - свойство SurName переменной

    "$($_.SurName)" - для раскрытия переменной в строке - используется конструкция "$($variable)"

    "sn -eq '$($_.SurName)'" - в конечном итоге даст "sn -eq 'Сидоров'" и т.д.

    Подробнее в справке - about_ActiveDirectory_Filter


    • Помечено в качестве ответа Жуков Иван 6 февраля 2014 г. 14:09
    6 февраля 2014 г. 10:44
    Отвечающий