Next: Linux para Programadores
Up: Las estructuras de control
Previous: Lazos
También disponemos de una sentencia de control multicamino, en función
de una única expresión.
-
- switch (expresión)
case patrón1:
lista de comandos
breaksw
case patrón2:
case patrón3:
lista de comandos
breaksw
default:
lista de comandos por defecto
endsw
Ejemplo:
width 3pt
width .3pt415pt113 % cat menu.csh
#!/bin/csh
echo PROGRAMA MENU
set stop = 0 # flag de terminación del programa
while ($stop == 0)
cat << ENDOFMENU
1 : Imprimir la fecha.
2, 3 : Imprimir el directorio de trabajo.
4 : Salir
ENDOFMENU
echo ""
echo -n 'Tu elección ? '
set reply = $<
echo ""
switch ($reply)
case "1":
date
breaksw
case "2":
case "3":
pwd
breaksw
case "4":
set stop = 1
breaksw
default:
echo Elección ilegal
breaksw
endsw
end
114 % menu.csh
PROGRAMA MENU
1 : Imprimir la fecha.
2, 3 : Imprimir el directorio de trabajo.
4 : salir
Tu eleccion ? 1
Wed Apr 26 01:03:18 GMT 1995
1 : Imprimir la fecha.
2, 3 : Imprimir el directorio de trabajo.
4 : salir
Tu eleccion ? 2
/home/guess
1 : Imprimir la fecha.
2, 3 : Imprimir el directorio de trabajo.
4 : salir
Tu eleccion ? 3
/home/guess
1 : Imprimir la fecha.
2, 3 : Imprimir el directorio de trabajo.
4 : salir
Tu eleccion ? 4
115 %
width .3pt
depth .3pt
width -3pt
Next: Linux para Programadores
Up: Las estructuras de control
Previous: Lazos
Vicente González Ruiz
1998-07-13