Compartir a través de


opción

Pide al usuario que seleccione un elemento de una lista de opciones de un solo carácter en un programa por lotes y, a continuación, devuelve el índice de la opción seleccionada. Si se usa sin parámetros, opción muestra las opciones predeterminadas Y y N.

Sintaxis

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

Parámetros

Parámetro Descripción
/c <choice1><choice2><…> Especifica la lista de opciones que se van a crear. Las opciones válidas incluyen a-z, A-Z, 0-9 y caracteres ASCII extendidos (128-254). La lista predeterminada es YN, que se muestra como [Y,N]?.
/n Oculta la lista de opciones, aunque las opciones siguen habilitadas y el texto del mensaje (si se especifica mediante /m) sigue apareciendo.
/Cs Especifica que las opciones distinguen mayúsculas de minúsculas. De forma predeterminada, las opciones no distinguen mayúsculas de minúsculas.
/t <timeout> Especifica el número de segundos que se pausan antes de usar la opción predeterminada especificada por /d. Los valores aceptables van de 0 a 9999. Si /t se establece en 0, opción no se pausa antes de devolver la opción predeterminada.
/d <choice> Especifica la opción predeterminada para usar después de esperar el número de segundos especificado por /t. La opción predeterminada debe estar en la lista de opciones especificadas por /c.
/m <text> Especifica un mensaje que se va a mostrar antes de la lista de opciones. Si no se especifica /m, solo se muestra la solicitud de elección.
/? Muestra ayuda en el símbolo del sistema.

Observaciones

  • La variable de entorno ERRORLEVEL se establece en el índice de la clave que el usuario selecciona en la lista de opciones. La primera opción de la lista devuelve un valor de 1, el segundo valor de 2, etc. Si el usuario presiona una tecla que no es una opción válida, opción suena un sonido de advertencia.

  • Si opción detecta una condición de error, devuelve un valor de ERRORLEVEL de 255. Si el usuario presiona CTRL+BREAK o CTRL+C, opción devuelve un valor ERRORLEVEL de 0.

Nota:

Al usar ERRORLEVEL valores en un programa por lotes, debe enumerarlos en orden decreciente.

Ejemplos

Para presentar las opciones Y, Ny C, escriba la siguiente línea en un archivo por lotes:

choice /c ync

Aparece el siguiente símbolo del sistema cuando el archivo por lotes ejecuta el comando elección:

[Y,N,C]?

Para ocultar las opciones Y, Ny C, pero muestra el texto , Noo Continue, escriba la siguiente línea en un archivo por lotes:

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

Nota:

Si usa el parámetro /n, pero no usa /m, no se le pregunta al usuario cuando opción está esperando la entrada.

Para mostrar tanto el texto como las opciones usadas en los ejemplos anteriores, escriba la siguiente línea en un archivo por lotes:

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

Para establecer un límite de tiempo de cinco segundos y especificar N como valor predeterminado, escriba la siguiente línea en un archivo por lotes:

choice /c ync /t 5 /d n

Nota:

En este ejemplo, si el usuario no presiona una tecla en un plazo de cinco segundos, opción selecciona N de forma predeterminada y devuelve un valor de error de 2. De lo contrario, opción devuelve el valor correspondiente a la elección del usuario.