Página siguiente Página anterior Índice general

6. Estructuras Condicionales

Las estructuras condicionales le permiten decidir si se realiza una acción o no; esta decisión se toma evaluando una expresión.

6.1 Pura teoría

Los condicionales tienen muchas formas. La más básica es: if expresión then sentencia donde 'sentencia' sólo se ejecuta si 'expresión' se evalúa como verdadera. '2<1' es una expresión que se evalúa falsa, mientras que '2>1' se evalúa verdadera.

Los condicionales tienen otras formas, como: if expresión then sentencia1 else sentencia2. Aquí 'sentencia1' se ejecuta si 'expresión' es verdadera. De otra manera se ejecuta 'sentencia2'.

Otra forma más de condicional es: if expresión1 then sentencia1 else if expresión2 then sentencia2 else sentencia3. En esta forma sólo se añade "ELSE IF 'expresión2' THEN 'sentencia2'", que hace que sentencia2 se ejecute si expresión2 se evalúa verdadera. El resto es como puede imaginarse (véanse las formas anteriores).

Unas palabras sobre la sintaxis:

La base de las construcciones 'if' es ésta:

if [expresión];

then

código si 'expresión' es verdadera.

fi

6.2 Ejemplo: Ejemplo básico de condicional if .. then

            #!/bin/bash
            if [ "petete" = "petete" ]; then
               echo expresión evaluada como verdadera
            fi
            

El código que se ejecutará si la expresión entre corchetes es verdadera se encuentra entre la palabra 'then' y la palabra 'fi', que indica el final del código ejecutado condicionalmente.

6.3 Ejemplo: Ejemplo básico de condicional if .. then ... else

            #!/bin/bash     if [ "petete" = "petete" ]; then
               echo expresión evaluada como verdadera
            else
               echo expresión evaluada como falsa
            fi
            

6.4 Ejemplo: Condicionales con variables

            #!/bin/bash
            T1="petete"
            T2="peteto"
            if [ "$T1" = "$T2" ]; then
                echo expresión evaluada como verdadera
            else
                echo expresión evaluada como falsa
            fi
            

6.5 Ejemplo: comprobando si existe un fichero

un agradecimiento más a mike

            #!/bin/bash
            FILE=~/.basrc
            if [ -f $FILE ]; then
                echo el fichero $FILE existe
            else
                echo fichero no encontrado
            fi
            if [ 'test -f $FILE']
            

Página siguiente Página anterior Índice general