Я работаю над сценарием PowerShell с меню для выбора различных способов поиска информации в Active Directory. Команда с Get-ADUser работает правильно, но команда с Get-ADPrincipalGroupMembership имеет странное поведение. Когда я выбираю эту опцию (3) и ввожу имя пользователя и запускаю команду, на дисплей ничего не выводится, если я затем завершаю работу, используя (Q) в меню, отображаются группы.
function Show-Menu
{
param (
[string]$Title = 'AD Search Tool'
)
cls
Write-Host "================ $Title ================"
Write-Host "1: Search Users by Title"
Write-Host "2: Press '2' for this option."
Write-Host "3: List User's Groups"
Write-Host "Q: Press 'Q' to quit."
}
do
{
Show-Menu
$input = Read-Host "Please make a selection"
switch ($input)
{
'1' {
cls
$title = Read-Host -Prompt 'Enter Title'
if ($title){
Get-ADUser -Properties SamAccountName, Enabled, Title, EmployeeID -Filter "(Title -eq '$title') -and (Enabled -eq 'True')" | select Enabled, EmployeeID, Name, SamAccountName, Title
}
} '2' {
cls
'You chose option #2'
} '3' {
cls
$user = Read-Host -Prompt 'Enter User Name'
if ($user){
Get-ADPrincipalGroupMembership $user | select name | sort name
}
} 'q' {
cls
return
}
}
pause
}
until ($input -eq 'q')