Compartilhar via


opção

Solicita que o usuário selecione um item de uma lista de opções de caractere único em um programa em lotes e retorna o índice da opção selecionada. Se usado sem parâmetros, escolha exibirá as opções padrão Y e N.

Sintaxe

choice [/c [<choice1><choice2><…>]] [/n] [/cs] [/t <timeout> /d <choice>] [/m <text>]

Parâmetros

Parâmetro Descrição
/c <choice1><choice2><…> Especifica a lista de opções a serem criadas. As opções válidas incluem a-z, A-Z, 0-9 e caracteres ASCII estendidos (128-254). A lista padrão é YN, que é exibida como [Y,N]?.
/n Oculta a lista de opções, embora as opções ainda estejam habilitadas e o texto da mensagem (se especificado por /m) ainda seja exibido.
/Cs Especifica que as opções diferenciam maiúsculas de minúsculas. Por padrão, as opções não diferenciam maiúsculas de minúsculas.
/t <timeout> Especifica o número de segundos a serem pausados antes de usar a opção padrão especificada por /d. Os valores aceitáveis são de 0 a 9999. Se /t estiver definido como 0, escolha não pausar antes de retornar a opção padrão.
/d <choice> Especifica a opção padrão a ser usada depois de aguardar o número de segundos especificado por /t. A opção padrão deve estar na lista de opções especificada por /c.
/m <text> Especifica uma mensagem a ser exibida antes da lista de opções. Se /m não for especificado, somente o prompt de escolha será exibido.
/? Exibe a ajuda no prompt de comando.

Observações

  • A variável de ambiente ERRORLEVEL é definida como o índice da chave que o usuário seleciona na lista de opções. A primeira opção na lista retorna um valor de 1, o segundo um valor de 2e assim por diante. Se o usuário pressionar uma tecla que não seja uma opção válida, escolha soará um bipe de aviso.

  • Se escolha detectar uma condição de erro, ela retornará um valor ERRORLEVEL de 255. Se o usuário pressionar CTRL+BREAK ou CTRL+C, escolha retornará um valor ERRORLEVEL de 0.

Observação

Ao usar errorlevel valores em um programa em lote, você deve listá-los em ordem decrescente.

Exemplos

Para apresentar as opções Y, Ne C, digite a seguinte linha em um arquivo em lote:

choice /c ync

O prompt a seguir é exibido quando o arquivo em lote executa o comando escolha:

[Y,N,C]?

Para ocultar as opções Y, Ne C, mas exibir o texto Sim, Semou Continuar, digite a seguinte linha em um arquivo em lote:

choice /c ync /n /m "Yes, No, or Continue?"

Observação

Se você usar o parâmetro /n, mas não usar /m, o usuário não será solicitado quando opção estiver aguardando entrada.

Para mostrar o texto e as opções usadas nos exemplos anteriores, digite a seguinte linha em um arquivo em lote:

choice /c ync /m "Yes, No, or Continue"

Para definir um limite de tempo de cinco segundos e especificar N como o valor padrão, digite a seguinte linha em um arquivo em lote:

choice /c ync /t 5 /d n

Observação

Neste exemplo, se o usuário não pressionar uma tecla dentro de cinco segundos, escolha selecionar N por padrão e retornar um valor de erro de 2. Caso contrário, escolha retornará o valor correspondente à escolha do usuário.