Введите список внутри переменной, проверьте, существует ли пользователь, если true, добавьте к новой переменной Powershell

#powershell

#powershell

Вопрос:

Я пытаюсь выполнить проверку в Powershell, где у меня есть список пользователей AD внутри переменной, а затем проверьте, существует ли каждое из этих имен пользователей в AD. Если они это сделают, это добавит их в другую переменную, а если нет, то выведет в стандартный вывод те, которые не найдены.

Например, входная переменная будет выглядеть примерно так:

 $CHECKUSERS = bakerc fosterv englesp
  

И если bakerc и englesp существуют в AD с помощью Get-ADUser (или другой команды, если есть вариант получше), он затем добавит их в другую переменную, например:

 $VERIFIEDUSERS = bakerc englesp
  

Затем он выводит fosterv в стандартный вывод:

 fosterv not found
  

Ответ №1:

Не любитель писать ваш код за вас, но это достаточно простой запрос.

Не самый эффективный способ сделать это из-за нескольких вызовов AD, но он выполняет свою работу.

 $CHECKUSERS = "bakerc","fosterv","englesp"
$VERIFIEDUSERS = @()
$INVALIDUSERS = @()

Foreach($user in $CHECKUSERS) {
    Try {
        Get-ADUser $user | Out-Null
        $VERIFIEDUSERS  = $User
    } Catch {
        $INVALIDUSERS  = $user
    }
}