Почему переменные не работают с Get-Aduser в PowerShell?
Ищу небольшое объяснение, почему это не работает и что я делаю неправильно. Любая помощь была бы замечательной!
Ожидаемые результаты:BSMITH
Get-Aduser -filter {(givenname -eq "Bob") -and (surname -eq "Smith"))} | select-object SamAccountName
Результат:BSMITH
Работает отлично. Хорошо пойти
Ожидаемый результат:BSMITH
$textbox_FirstName = "Bob"
$textbox_LastName = "Smith"
Get-Aduser -filter {(givenname -eq "$textbox_FirstName.text") -and (surname -eq "$textbox_LastName.text")} | select-object SamAccountName
Результат: (ничего не пусто)
я пытался
1 ответ
Решение
Обе переменные имеют тип
string
у них нет свойства, кроме того, добавление двойных кавычек к вашей переменной расширит переменную и объединит
.text
:
$textbox_FirstName = "Bob"
"$textbox_FirstName.Text" => Bob.Text
Любой из этих вариантов должен дать вам ожидаемый результат:
Get-Aduser -Filter {GivenName -eq $textbox_FirstName -and Surname -eq $textbox_LastName}
Get-Aduser -Filter "GivenName -eq '$textbox_FirstName' -and Surname -eq '$textbox_LastName'"
Get-Aduser -LDAPFilter "(&(GivenName=$textbox_FirstName)(Surname=$textbox_LastName))"