¿Qué fallo tiene este bucle While?

Imagen de galois1234
0 puntos

Pues eso. Llevo unos días intentando resolver el siguiente bucle while y no consigo encontrar el fallo. El problema es que no sale nunca de él, aunque la opción elegida sea 1, 2 ó 3.

nOpcion=0
while [ $nOpcion=0 ]
do
    clear
    echo -e "ELIGE LOS DISPOSITIVOS QUE QUIERES SINCRONIZAR"
    echo -e "----------------------------------------------\n"
    echo -e "1: Pc y Disco Externo.\n"
    echo -e "2: Pc y Memoria USB.\n"
    echo -e "3: Salir.\n"
    read nOpcion
    echo $nOpcion
    read
    if [ $nOpcion -lt 1 -o $nOpcion -gt 3 ]
    then
        echo -e "\n"
        echo -e "OPCIÓN ERRÓNEA.\n"
        echo -e "INTÉNTALO DE NUEVO. PULSA ENTER PARA CONTINUAR.\n"
        read
        nOpcion=0
    fi
done

¿Alguien sabe dónde está el problema? Gracias. 

Imagen de mz
+1
0
-1

no tengo mucha idea de bash yo tampoco, pero bueno, dandole un poco de vueltas creo que ya se lo que te pasa:

while [ $nOpcion=0 ]

prueba a poner algun espacio mas:

while [ $nOpcion = 0 ]

asi a mi me a funcionado :D 

+1
0
-1
Imagen de Finwe
+1
0
-1

prueba a poner algun espacio mas:

tienes razón, al parecer lo modifiqué sin darme cuenta y me funcionó:-(

----------
Iniciando script....
Generando backup del comentario....
Backup exitoso....
Mirar la Guía Ubuntu y las NORMAS

+1
0
-1

----------
Iniciando script....
Generando backup del comentario....
Backup exitoso....
Mirar la Guía Ubuntu y las NORMAS

Imagen de galois1234
+1
0
-1

Pues si, es el espacio. Muchas gracias a todos.

+1
0
-1
Imagen de Finwe
+1
0
-1

creo que el error es que no presionas ENTER luego de elegir la opción. Hay un read que espera entrada de datos.

 
echo $nOpcion
read

a mi si me hace el while. Para depurar el script puedes ejecutarlo como

 
bash -x script.sh

Saludos.
----------
Iniciando script....
Generando backup del comentario....
Backup exitoso....
Mirar la Guía Ubuntu y las NORMAS

+1
0
-1

----------
Iniciando script....
Generando backup del comentario....
Backup exitoso....
Mirar la Guía Ubuntu y las NORMAS