Declarações Condicionais: Há um total de 5 declarações condicionais que podem ser usadas em programação bash
- se declaração
- if-else declaração
- if…elif…else…fi declaração (Else If ladder)
- if…então…else..if..then…fi…fi..(Nested if)
- li>switch statement
a sua descrição com sintaxe é a seguinte:
if statement
Este bloco processará se a condição especificada for verdadeira.
Sintaxe:
if then statementfi
if-else statement
Se a condição especificada não for verdadeira em se parte, então parte será executada.
Syntax
if then statement1else statement2fi
if…elif…else…fi statement (Else If ladder)
Para usar múltiplas condições num bloco if-else, então a palavra-chave elif é usada em shell. Se a expressão1 for verdadeira, então executa as afirmações 1 e 2, e este processo continua. Se nenhuma das condições for verdadeira, então processa outra parte.
Syntax
if then statement1 statement2 . .elif then statement3 statement4 . .else statement5fi
if..then…then…if…then…fi…fi..(Nested if)
Nested if-else block can be used when, one condition is satisfies then it again checks another condition. Na sintaxe, se a expressão1 for falsa então processa outra parte, e novamente a expressão2 será verificada.
Sintax:
if then statement1 statement2 .else if then statement3 . fifi
comutação de expressão
comutação de expressão funciona como uma declaração de troca se o valor especificado corresponder ao padrão então executará um bloco desse padrão em particular
Quando uma correspondência é encontrada todas as declarações associadas até que o ponto-e-vírgula duplo (;;;) seja executado.
Uma caixa será terminada quando o último comando for executado.
Se não houver correspondência, o estado de saída da caixa é zero.
Syntax:
case in Pattern 1) Statement 1;; Pattern n) Statement n;;esac
Programas de Exemplo
Exemplo 1:
Implementar if
declaração
>/p>
br>>>/p>
/div>
#Initializing two variables
a=10
b=20
#Check whether they are equal
if
then
echo
"a is equal to b"
fi
#Check whether they are not equal
if
then
echo
"a is not equal to b"
fi
br>>>/div>
Eliminar
$bash -f main.sha is not equal to b
Exemplo 2:
Implementing if.else
declaração
>/p>
/div>
#Initializing two variables
a=20
b=20
if
then
#If they are equal then
print
this
echo
"a is equal to b"
else
#
else
print
this
echo
"a is not equal to b"
fi
br>>>/div>
Eliminar
$bash -f main.sha is equal to b
Exemplo 3:
Implementing switch
declaração
CARS=
"bmw"
#Pass the variable in string
case
"$CARS"
in
#
case
1
"mercedes"
)
echo
"Headquarters - Affalterbach, Germany"
;;
#
case
2
"audi"
)
echo
"Headquarters - Ingolstadt, Germany"
;;
#
case
3
"bmw"
)
echo
"Headquarters - Chennai, Tamil Nadu, India"
;;
esac
br>>>/div>
Saída
$bash -f main.shHeadquarters - Chennai, Tamil Nadu, India.
Nota: O scripting de shell é uma linguagem sensível a maiúsculas e minúsculas, o que significa que a sintaxe adequada tem de ser seguida durante a escrita dos scripts.