Shell de Unix / Linux - La declaración if ... elif ... fi

los if...elif...fi declaración es la forma de declaración de control de un nivel de avance que permite a Shell tomar la decisión correcta a partir de varias condiciones.

Sintaxis

if [ expression 1 ]
then
   Statement(s) to be executed if expression 1 is true
elif [ expression 2 ]
then
   Statement(s) to be executed if expression 2 is true
elif [ expression 3 ]
then
   Statement(s) to be executed if expression 3 is true
else
   Statement(s) to be executed if no expression is true
fi

Este código es solo una serie de declaraciones if , donde cada if es parte de la cláusula else de la declaración anterior. Aquí las declaraciones se ejecutan en función de la condición verdadera, si ninguna de las condiciones es verdadera , se ejecuta el bloque else .

Ejemplo

#!/bin/sh

a=10
b=20

if [ $a == $b ]
then
   echo "a is equal to b"
elif [ $a -gt $b ]
then
   echo "a is greater than b"
elif [ $a -lt $b ]
then
   echo "a is less than b"
else
   echo "None of the condition met"
fi

Tras la ejecución, recibirá el siguiente resultado:

a is less than b
unix-decision-making.htm