Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: turitonn en 16 Noviembre 2018, 15:28 pm



Título: Duda sobre script en Debian
Publicado por: turitonn en 16 Noviembre 2018, 15:28 pm
Buenos Dias a todos, estoy programando un shell script que se ejecute cuando el usuario inicie sesion, la funcionalidad del mismo es que haya que ingresar una contraseña o una fecha, predefinida,para montar la particion /usr, mi duda es la siguiente:

Codigo Fuente

echo "Ingrese Metodo de Identificacion"
echo "[1] Passphrase"
echo "[2] Fecha"
read input_option
case $input_option in

        1)     echo "Ingrese La Contraseña"
                read -s pass
                break
                ;;

        2)     echo "Ingrese Fecha [DD/MM/YY]"
                read -s -n 8 date
                break
                ;;

        *)      echo "Por Favor Ingrese una de las dos opciones"
                break
                ;;

esac

//Fin del Codigo Fuente

El caso es que, en las opciones numero 1 y 2 (que seria ingresar contraseña o fecha), no me toma el atributo -s para que no se haga "eco" en pantalla de la contraseña que estoy introduciendo. Cuando ejecuto el script y selecciono alguna de estas opciones me devuelve: "read: Illegal option -s" apesar de que cuando ejecuto esta linea en la terminal por afuera del script, si funciona.
Y ya que estoy queria consultarles si hay algun codigo que evite que el script se cierre manualmente (desde la cruz de la esquina). Desde ya, muchas gracias y buen fin de semana para todos.


Título: Re: Duda sobre script en Debian
Publicado por: tincopasan en 17 Noviembre 2018, 07:56 am
1)¿cómo ejecutas el script?
2) los break deberían dar error, ya que se usan en ciclos (while,for)
3)
Citar
evite que el script se cierre manualmente (desde la cruz de la esquina

¿te referís que continue el proceso?
4)
Código
  1. read -s pass
no tiene error, debe andar


Título: Re: Duda sobre script en Debian
Publicado por: turitonn en 17 Noviembre 2018, 20:51 pm
1)¿cómo ejecutas el script?
2) los break deberían dar error, ya que se usan en ciclos (while,for)
3)
¿te referís que continue el proceso?
4)
Código
  1. read -s pass
no tiene error, debe andar

Si, deberia funcionar, pero no lo hace. El script lo ejecuto mediante terminal con el comando sh nombrescript.sh pero se ejecuta automaticamente cada vez que inicias sesion. Los break no dan error ya que da error justamente cuando no los pones..., Y con respecto a lo de la cruz de la esquina, (capaz no me explique del todo bien), es evitar que el usuario saltee esta segunda indentificacion y continue usando la pc normalmente. Es decir invalidar las opciones de minimizar o cerrar.