Como posso limitar o valor da entrada? Powershell

Como posso limitar o valor da entrada? Powershell

Como posso limitar o valor da entrada?

$M = Read-Host -Prompt 'Input your MM'  
$D = Read-Host -Prompt 'Input the DD'
$Y = Read-Host -Prompt 'Input your YYYY'

Quero limitar quantos caracteres você pode inserir. Para 2 ou 4. MM apenas dois caracteres. Apenas números AAAA apenas quatro caracteres. Apenas números

Ex: quando alguém digita mais de 2 dígitos. Isso quebra o resto do elogio. Só não sei como limitar isso no PowerShell.

Responder1

Você pode validar toda a entrada em uma única etapa com o script a seguir. Eu modifiquei isso deuma resposta do TechNet.

While(1){
    Try{
        $UserDate = [DateTime](Read-Host 'Enter date (MM/DD/YYYY)')
        Break
    }
    Catch{
        Write-Host 'Not a valid date. Enter MM/DD/YYYY' -ForegroundColor Red
    }
}
$UserMonth = $UserDate.ToString('MM')
$UserDay = $UserDate.ToString('dd')
$UserYear = $UserDate.ToString('yyyy')

informação relacionada