Next: while y until
Up: Control de flujo
Previous: case
  Índice General
  Índice de Materias
select
select nombre_de_variable [in lista]
do
código
done
Igual que en el for si omites la lista, toma por defecto
$@. La estructura select es muy potente y polivalente a pesar de su
sintaxis sencilla:
- genera un menú para cada objeto de la lista
- pregunta al usuario por un número (usando como prompt el valor de
PS3)
- guarda la opción seleccionada por el usuario en una variable
llamada REPLY
- ejecuta el código correspondiente a la elección del usuario
- repite este proceso de forma continua (de ahí la necesidad de reservar
un opción para terminar select a través de break)
- EJ:
-
PS3="¿primer plato? "
IFS=:
primeros_platos="lentejas:paella:ensalada:decidido"
select eleccion in $primeros_platos
do
case $eleccion in
lentejas ) echo "Has elegido lentejas" ;;
paella | ensalada ) echo "Has elegido el plato numero $REPLY" ;;
decidido ) echo "Has tomado tu decisión, ¡buen provecho!"
break ;;
* ) echo "Primer plato no disponible, elija otro";;
esac
done
Next: while y until
Up: Control de flujo
Previous: case
  Índice General
  Índice de Materias
Alberto Cortés
2001-03-26