Bash Script – Estruturas de Decisão
As estruturas de decisão são elementos fundamentais na programação, permitindo que você controle o fluxo de execução de um programa com base em condições específicas. No Bash, uma linguagem de script poderosa amplamente usada em sistemas Unix e Linux, você pode usar as estruturas if
, else
, elif
e realizar comparações com strings para criar fluxos de controle condicionais. Neste artigo, exploraremos essas estruturas em detalhes e forneceremos exemplos práticos com comparações envolvendo números e strings.
Estrutura Básica do if
A estrutura de decisão if
em Bash permite que você execute um bloco de código se uma condição for avaliada como verdadeira (ou seja, seu valor de retorno seja zero). A sintaxe básica é a seguinte:
if [ condição ]; then
# Código a ser executado se a condição for verdadeira
fi
- A palavra-chave
if
inicia a estrutura de decisão. [ condição ]
é uma expressão que é avaliada como verdadeira ou falsa.then
indica o início do bloco de código a ser executado se a condição for verdadeira.fi
fecha a estruturaif
.
Exemplo de if
com Números
Vamos começar com um exemplo simples que verifica se um número é maior que 10 e exibe uma mensagem correspondente:
#!/bin/bash
numero=15
if [ $numero -gt 10 ]; then
echo "O número é maior que 10."
fi
Neste exemplo, definimos a variável numero
com o valor 15 e usamos o operador de comparação -gt
para verificar se é maior que 10. Se a condição for verdadeira, a mensagem será exibida na saída padrão.
Exemplo de if
com Strings
A estrutura if
também pode ser usada para comparar strings. Veja um exemplo que verifica se duas strings são iguais:
#!/bin/bash
fruta1="maçã"
fruta2="banana"
if [ "$fruta1" = "$fruta2" ]; then
echo "As frutas são iguais."
fi
Neste caso, usamos =
para comparar as strings fruta1
e fruta2
. Se forem iguais, a mensagem “As frutas são iguais” será exibida.
Estrutura if
… else
Às vezes, você pode querer executar um bloco de código se a condição não for verdadeira. Para isso, você pode usar a estrutura if
… else
:
if [ condição ]; then
# Código a ser executado se a condição for verdadeira
else
# Código a ser executado se a condição for falsa
fi
Exemplo de if
… else
com Números
Aqui está um exemplo que verifica se um número é par ou ímpar:
#!/bin/bash
numero=7
if [ $((numero % 2)) -eq 0 ]; then
echo "O número é par."
else
echo "O número é ímpar."
fi
Neste caso, usamos a operação de módulo %
para determinar se o número é par. Se o resultado for zero, é par; caso contrário, é ímpar.
Exemplo de if
… else
com Strings
Agora, vamos verificar se uma senha digitada está correta:
#!/bin/bash
senha_correta="segura123"
senha_digitada="senha123"
if [ "$senha_correta" = "$senha_digitada" ]; then
echo "A senha está correta."
else
echo "A senha está incorreta."
fi
Neste exemplo, comparamos a senha_correta
com a senha_digitada
. Se forem iguais, a mensagem “A senha está correta” será exibida; caso contrário, “A senha está incorreta” será exibida.
Estrutura if
… elif
… else
Às vezes, você pode precisar de múltiplas condições em uma estrutura de decisão. Para isso, você pode usar a estrutura if
… elif
… else
. Aqui está a sintaxe:
if [ condição1 ]; then
# Código a ser executado se condição1 for verdadeira
elif [ condição2 ]; then
# Código a ser executado se condição2 for verdadeira
else
# Código a ser executado se nenhuma das condições anteriores for verdadeira
fi
Exemplo de if
… elif
… else
com Strings
Vamos criar um exemplo que verifica o dia da semana e fornece uma mensagem correspondente:
#!/bin/bash
dia="segunda"
if [ "$dia" = "segunda" ]; then
echo "Hoje é segunda-feira."
elif [ "$dia" = "quarta" ]; then
echo "Hoje é quarta-feira."
else
echo "Hoje não é segunda nem quarta-feira."
fi
Neste exemplo, comparamos a variável dia
com os valores “segunda” e “quarta”. Dependendo do valor, a mensagem apropriada será exibida.
Conclusão
As estruturas de decisão if
, else
, elif
e as comparações de strings são recursos poderosos no Bash, permitindo que você crie scripts flexíveis e adaptáveis. Compreender como usar essas estruturas é essencial para a programação em Bash, e você agora possui uma base sólida para começar a criar scripts mais avançados e eficientes. Lembre-se de que a prática é fundamental para aprimorar suas habilidades em programação, então experimente criar seus próprios exemplos e explore as possibilidades oferecidas pelo Bash.