-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hola
On Monday 09 December 2002 15:19, sitalopez wrote:
> Hola,
> Una duda que quiz� para muchos sea una novatada, pero a mi no me sale.
> Tengo una duda con la condici�n "if" y "endif" "fi" de este script. Leo
> manuales y todos dicen que lo hago bien, pero no me sale.
> �alguien me puede hechar una mano?
>
> #fichero1.sh
> echo "introduce n�mero"
> read n;
las referencias a las variables se deben hacer con $variable
si lees n debes comparar $n
Ej:
read n
echo $n


No me suena la encapsulaci�n en par�ntesis en sh
pero podr�a ser...

los operadores de una condici�n test nunca deben tocar los corchetes
ten en cuenta que [  es un enlace duro a test ( son el mismo archivo ) ser�a 
como escribir testn en vez de test n ( recuerda que es $n.

Por otro lado para comparar campos num�ricos no se debe utilizar el operador 
igual, deber�as usar -eq 

> if ([n=1] then) echo "uno"

Con lo que tu condici�n se transforma en

if [ "$n" -eq 1 ]; then echo "uno" 

si quieres que pueda trabajar con cualquier caracter y no solo con n�meros
si puedes utilizar el operador = ( los tratas como caracteres y no como 
n�meros ) mejora la tolerancia a fallos

lo mismo has de aplicarlo en las siguientes l�neas
> elif ([n=2] then) echo "dos"
> else echo "ni uno ni dos"

solo tienes un bucle if ( fi es if al rev�s ;-) 
> fi
este te sobrar�a
> fi

Compara con el tuyo �ste:

#!/bin/sh
echo "introduce n�mero"
read n
if [ $n = 1 ]
then
echo "uno"
elif [ $n -eq 2 ]
then
echo "dos"
else
echo "ni uno ni dos"
fi

en cualquier caso para esas cosas te recomiendo el sencillo pero siempre 
interesante select

#!/bin/bash
select eleccion in uno dos tres cuatro salir
do
if [ $eleccion = salir ]
then
echo "Saliendo"
exit 0
fi

if [ $eleccion = uno ]
then
echo "eleccion vale 1"
elif [ $eleccion = dos  ]
then
echo "eleccion vale 2"
else
echo "eleccion vale tres o cuatro"
fi
done

En cualquier caso, y para m�s y mejores detalles:
La gu�a de scripting avanzado ( ojo es para bash )

http://www.tldp.org/LDP/abs/html/index.html

Saludos
Victor
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE99LSOEzqHF8R72ekRAmLsAKCZ5YbxMJCwWvdXGVxSPvFPCCXCLgCgkBjl
wwOdq8MEh2YlXQqETm8d7Lc=
=4dM1
-----END PGP SIGNATURE-----

Responder a