# $1 = Leyeda a mostrar de preguntar
# $2 = string con las opciones validas
# $3 = Variable donde guardar el valor ingresado
+# $4 = Valor por defecto si se apreta ENTER
#
preguntar () {
- PREGUNTA=$1
- OPCIONES=$2
- while [ true ] ; do
+ PREGUNTA="$1"
+ OPCIONES="$2"
+ DEFAULT="$4"
+ while true; do
read -p "$PREGUNTA [$OPCIONES]: " RTA
+ # Si me pasaron un default y la respuesta es vacía
+ if [ -n "$DEFAULT" -a -z "$RTA" ]; then
+ # devuelvo default
+ RTA="$DEFAULT"
+ return 0
+ fi
+
# Escapeo el caracter '-' por '\-'
RTA=$(echo $RTA | sed "s/\-/\\\-/")