]> git.llucax.com Git - z.facultad/75.08/llamadas.git/commitdiff
Agrego ejemplo de funciones utiles
authorRicardo Markiewicz <gazer.arg@gmail.com>
Sun, 10 Oct 2004 00:15:55 +0000 (00:15 +0000)
committerRicardo Markiewicz <gazer.arg@gmail.com>
Sun, 10 Oct 2004 00:15:55 +0000 (00:15 +0000)
example.sh [new file with mode: 0755]

diff --git a/example.sh b/example.sh
new file mode 100755 (executable)
index 0000000..86bbe39
--- /dev/null
@@ -0,0 +1,62 @@
+#/bin/sh
+
+# Lee del teclado un valor
+#
+# parĂ¡metros :
+#  $1 = Leyeda a mostrar de pregunta
+#  $2 = Valor default por si el usuario no ingresa nada
+#  $3 = Variable donde guardar el valor ingresado (o el default)
+#
+leer () {
+       MSG=$1
+       DEFAULT=$2
+       read -p "$MSG [$DEFAULT] : " ALGO 
+       # Si el usuario no ingresa nada
+       # nos quedamos con el valor default
+       if [ ! -z "$ALGO" ] ; then
+               eval "$3=$ALGO"
+       else
+               eval "$3=$DEFAULT"
+       fi
+}
+
+# Realiza una pregunta al usuario
+#
+# parĂ¡metros :
+#  $1 = Leyeda a mostrar de preguntar
+#  $2 = string con las opciones validas
+#  $3 = Variable donde guardar el valor ingresado
+#
+preguntar () {
+       PREGUNTA=$1
+       OPCIONES=$2
+       while [ true ] ; do
+               read -p "$PREGUNTA : " RTA
+               IS_OK=`echo "$OPCIONES" | grep "$RTA"`
+               if [ ! -z "$IS_OK" ] && [ ! -z "$RTA" ] ; then
+                       eval "$3=$RTA"
+                       return 0
+               fi
+       done
+}
+
+leer "Ingrese un directorio" "/tmp" ALGO
+
+echo "Ingresaste : $ALGO"
+
+echo
+echo
+
+# Test de preguntanto
+preguntar "Sos hombre (s/n)" "sn" OPT
+
+if [ "$OPT" == "s" ] ; then
+       echo "Sos un mentiroso!!!"
+else
+       echo "Jaja ... Trola!"
+fi
+
+# Test de preguntanto
+preguntar "Que preferis (drogas/cafe/vino/coca cola)" "drogas cafe vino \"coca cola\"" OPT
+
+echo "Vos decidis : $OPT"