Подскажите для выбора. Повторите запрос, если опция недействительна - PullRequest
0 голосов
/ 31 мая 2019

Мне интересно, как повторно подсказать, если кто-то опечатывает или вводит что-то кроме да / нет Должен ли он быть создан как побуждающая функция или есть более простой способ?

$Continue = Read-Host -Prompt "Continue? Yes/No"
Switch($Continue){
    'Yes' { Write-host -ForegroundColor Yellow "Moving on..." }
    'No' {Write-host "...GoodBye" 
            Exit
         }
    default { #HOW TO RE-PROMPT USER FOR YES/No?
        }
}

1 Ответ

1 голос
/ 31 мая 2019

Использование цикла while, который проверяет переменную. Если набрано Да , то $Check будет равно $true при выходе из цикла. В противном случае он останется ложным и снова запустит цикл.

$Check = $false
while($Check -eq $false){
    Switch(Read-Host -Prompt "Continue? Yes/No"){
        'Yes' {
            Write-host -ForegroundColor Yellow "Moving on..."
            $Check = $true
        }
        'No' {
            Write-host "...GoodBye" 
            return
        }
    }
} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...