Criando esta resposta apenas como um complemento de acompanhamento baseado no comentário dos OPs sobre como validar a entrada, como uma adição às outras boas respostas. Era muito longo para colocar em um comentário no lugar certo.
A validação da entrada pode ser feita de várias maneiras. Por meio de preferência pessoal, gosto de usar a declaração change para inserir validação, como eu geralmente acho mais fácil de ler e depurar do que um monte de se mais se mais versátil do que um enquanto .
Da mesma forma, prefiro usar funções em loops para falhar na validação, pois acho o código mais limpo e mais reutilizável. As funções também têm a possibilidade integrada de validação de parâmetros onde essa parece ser a melhor maneira de validar o conteúdo de uma variável.
Então, apenas como exemplo, aqui está uma função simples que se chama para reafirmar a questão quando a entrada não é a esperada.
function Get-SomeInput {
$input = read-host "Please write yes or no and press Enter"
switch ($input) '
{
'yes' {
write-host 'You wrote yes'
}
'no' {
write-host 'You wrote no'
}
default {
write-host 'You may only answer yes or no, please try again.'
Get-SomeInput
}
}
}
Get-SomeInput