o if...elif...fi declaração é a forma de um nível avançado de declaração de controle que permite à Shell tomar a decisão correta a partir de várias condições.
Sintaxe
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 é apenas uma série de instruções if , onde cada if faz parte da cláusula else da instrução anterior. Aqui declaração (s) são executadas com base na verdadeira condição, se nenhuma condição for verdade, então o resto do bloco é executado.
Exemplo
#!/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
Após a execução, você receberá o seguinte resultado -
a is less than b
unix-decision-making.htm