[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Condición IF ELSE de un script básico



On Mon, 9 Dec 2002 11:55:01 -0300 (CLST)
Xavier Andrade <xavier@zeth.ciencias.uchile.cl> wrote:

> On Mon, 9 Dec 2002, 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;
> > if ([n=1] then) echo "uno"
> > elif ([n=2] then) echo "dos"
> > else echo "ni uno ni dos"
> > fi
> > fi
> >
> Los brackets deben llevar espacios alrededor y despues del then tienes
> que dar una nueva linea o un ";", puede que sea eso.

Los parentesis abren un subshell. Si passas estas expressiones a un
shell, te dirá que son incompletas.

Es probable que querias escribir $n en lugar de n.

[ es un sinónimo de test. Mírate la página de manual; verás que = se
usa para cadenas de caracteres e -eq para números. En cualquier caso
necesitas también espacios ahí para separar los tokens.

-- 
Ciccio
ciccio@netpole.com.br



Reply to: