stringtranslate.com

elección (comando)

En informática , choicees un comando que permite que archivos por lotes soliciten al usuario que seleccione un elemento de un conjunto de opciones de un solo carácter. [1] Está disponible en varios shells de línea de comandos del sistema operativo .

Historia

El comando se introdujo por primera vez como un comando externo (con nombres de archivo CHOICE.COM o CHOICE.EXE) con MS-DOS 6.0. [2] Se incluye en Novell DOS 7 e IBM PC DOS 7.0, y también está disponible desde el shell de línea de comandos de algunas versiones de Microsoft Windows , pero no en Windows 2000 y Windows XP . [3] Estuvo disponible por primera vez para Windows en el Kit de recursos de Windows XP . [4] Se ha reintroducido en Windows Server 2003 y está presente en versiones posteriores. [5]

A partir de Windows 2000, el SETcomando tiene una funcionalidad similar utilizando el /P argumento de la línea de comandos . Sin embargo, este comando requiere una pulsación de tecla adicional (presionar la tecla ENTER), que no es requerida por choice.

El choicecomando ha sido portado a OS/2 , Rexx y Perl . [6] También está disponible en Datalight ROM-DOS , [7] FreeDOS , [8] PTS-DOS , [9] y ReactOS . [10] La versión FreeDOS fue desarrollada por Jim Hall y tiene licencia GPL v2 . [11]

Uso

El comando devuelve la opción seleccionada como un código de salida que se establece en el índice de la clave que el usuario selecciona de la lista de opciones. La primera opción de la lista devuelve un valor de 1, la segunda un valor de 2, y así sucesivamente. Si se presiona una tecla que no es una opción válida, el comando emitirá un pitido de advertencia. Si se detecta una condición de error, se devolverá un valor de código de salida de 255. Se devolverá un valor de código de salida de 0 si el usuario presiona CTRL+ o + . Choice muestra las opciones predeterminadas Y y N si se usan sin parámetros. [12]BREAKCTRLC

Sintaxis

DOS

CHOICE [/C[:]choices] [/N] [/S] [/T[:]c,nn] ["text"]

Argumentos:

Banderas:

Microsoft Windows, ReactOS

CHOICE [/C [<Choice1><Choice2><…>]] [/N] [/CS] [/T <Timeout> /D <Choice>] [/M <"Text">]

Argumentos:

Banderas:

Ejemplo

El siguiente archivo por lotes ofrece al usuario tres opciones. [13] El usuario es dirigido dependiendo de su entrada evaluando el código de salida usando el IF ERRORLEVELcomando (que prueba "mayor o igual"). La opción seleccionada luego se imprime en la pantalla usando el ECHOcomando.

@ ECHO apagado @ CHOICE /C:123 IF  ERRORLEVEL  3  GOTO  tres IF  ERRORLEVEL  2  GOTO  dos IF  ERRORLEVEL  1  GOTO  uno GOTO  final : un ECHO ¡Has presionado "1" ! GOTO  final : dos ECHO ¡Has presionado "2" ! GOTO  final : tres ECHO ¡Has presionado "3" ! : fin @ PAUSA
Tenga en cuenta que el ejemplo utiliza la sintaxis de DOS. Este ejemplo requiere ligeros ajustes antes de aplicarse directamente a las versiones del CHOICEcomando para Windows.
Tenga en cuenta que el comando IF, al verificar ERRORLEVEL, compara el número y coincide si ERRORLEVEL es igual o mayor que ese número. Debido a esto, las comparaciones IF ERRORLEVEL deben realizarse en orden decreciente.
Tenga en cuenta que si el usuario presiona Control-C para escapar de ELECCIÓN seguido de N, el programa continuará. Se necesita el primer "Ir al final".

Ver también

Referencias

  1. ^ Jamsa, Kris A. (1993), DOS: la referencia completa, Osborne McGraw-Hill, p. 206, ISBN 0078819040.
  2. ^ "Comando de elección de línea de comandos de MS-DOS y Windows". www.computerhope.com .
  3. ^ "Referencia AZ de la línea de comandos de Microsoft Windows XP". Microsoft .
  4. ^ "Elección - Aceptar entrada del usuario - CMD de Windows - SS64.com". ss64.com .
  5. ^ "Haga que el comando Choice funcione para usted incluso en Windows 7". República Tecnológica . 13 de octubre de 2023.
  6. ^ "Archivos por lotes: el comando CHOICE". www.robvanderwoude.com .
  7. ^ "Guía del usuario de Datalight ROM-DOS" (PDF) . www.datalight.com .
  8. ^ "Grupo FreeDOS ibiblio.org - Base FreeDOS". www.ibiblio.org .
  9. ^ "Manual de usuario de PTS-DOS 2000 Pro" (PDF) . Buggingen, Alemania: Paragon Technology GmbH . 1999. Archivado (PDF) desde el original el 12 de mayo de 2018 . Consultado el 12 de mayo de 2018 .
  10. ^ "reactos/reactos". GitHub . 27 de octubre de 2022.
  11. ^ "Paquete FreeDOS de ibiblio.org - elección (Base FreeDOS)". www.ibiblio.org .
  12. ^ "Artículo de Microsoft TechNet Choice". 31 de agosto de 2016.
  13. ^ "Ayuda y soporte para archivos por lotes". www.computerhope.com .

Otras lecturas

enlaces externos