CHOICE
Format: CHOICE [/C:Tecles] [/N] [/S] [T:c,nn] [Text]
Significat : Permet a l’usuari fer una selecció respecte d’un conjunt d’opcions
que ofereix el procés per lots.
Opcions:
· /C Tecles : indica les tecles que podem utilitza; visualment apareixen
separades per comes i entre claudàtors, seguides d’un signe
d’interrogació. Si no s’utilitza aquesta opció apareix [S/N] com a valor
predeterminat.
· /N : Evita que choice presenti el conjunt d’opcions que ofereix per
defecte.
· /S: diferencia entre minúscules i majúscules
· /T : c,nn : Serveix per a indicar que esperi la resposta de l’usuari durant
un temps màxim de nn segons, i si passat aquest temps l’usuari no ha
triat cap de les opcions, s’agafa la opció especificada en c.
· /Text: és el text que es presenta a l’usuari abans de les possibles
opcions.
· L’ordre retorna un valor que pot ser controlat mitjançant condicions de
tipus ERRORLEVEL. Per al primer caràcter retorna el valor 1, per al segon
retorna el valor 2, i així successivament. Si es produeix qualsevol error
en la seva execució retorna el valor 255.
Exercici 1.
Descriu què fa aquest fitxer batch línia per línia, i després digues quin és el seu
objectiu de forma global.
@ECHO OFF
REM aplicació de l’ordre CHOICE
REM nom del fitxer : menu.bat
REM data de creació : 3-2-2003
REM gestiona un menú d’opcions
:REPETIR
CLS
REM presentació opcions
ECHO.
ECHO MENU OPCIONS
ECHO ============
ECHO.
ECHO.
ECHO 1. OPCIÓ PRIMERA
ECHO 2. OPCIÓ SEGONA
ECHO 3. OPCIÓ TERCERA
ECHO 4.
ECHO 5.
ECHO 0. SORTIR AL SISTEMA
ECHO.
REM Demanem l’opció
CHOICE /C:123450 /TEXT:Selecciona (1,2,3,4,5,0):
REM control opció escollida
IF ERRORLEVEL 255 GOTO :ERROR
IF ERRORLEVEL 6 GOTO : FI
IF ERRORLEVEL 5 GOTO : NACTIVA
IF ERRORLEVEL 4 GOTO : NACTIVA
IF ERRORLEVEL 3 GOTO :TRES
IF ERRORLEVEL 2 GOTO :DOS
IF ERRORLEVEL 1 GOTO :U
REM Control
:ERROR
ECHO Error en el procés
ECHO Prem una tecla per continuar
PAUSE>NUL
GOTO :FI
: NACTIVA
ECHO Opció no disponible, premeu una tecla per continuar
PAUSE>NUL
GOTO :FI
:TRES
ECHO Opció triada = 3
ECHO Premeu una tecla per continuar
PAUSE>NUL
GOTO :FI
:DOS
ECHO Opció triada = 2
ECHO Premeu una tecla per continuar
PAUSE>NUL
GOTO :FI
:U
ECHO Opció triada = 1
ECHO Premeu una tecla per continuar
PAUSE>NUL
GOTO :FI
:FI
ECHO Procés acabat
ECHO Premeu una tecla per acabar
PAUSE>NUL
CLS