Menu
CoddyTech

Instrução If

Parte da seção Fundamentos do Journey de Terminal da Coddy. Lição 70 de 82.

Até agora, seus scripts executam cada comando de cima para baixo sem tomar nenhuma decisão. Mas e se você quiser que seu script faça coisas diferentes com base em determinadas condições? É aí que a instrução if entra em cena.

A instrução if permite que seu script tome decisões. Ela verifica se uma condição é verdadeira e, se for, executa um bloco de código. Esta é a estrutura básica:

#!/bin/bash
age=18
if [ $age -ge 18 ]; then
    echo "You are an adult"
fi

A condição fica entre colchetes, com espaços ao redor. A palavra-chave then marca o início do código a ser executado, e fi (if escrito ao contrário) encerra a instrução.

Você também pode lidar com o caso em que a condição é falsa usando else:

#!/bin/bash
age=15
if [ $age -ge 18 ]; then
    echo "You are an adult"
else
    echo "You are a minor"
fi

Os operadores de comparação comuns para números incluem -eq (igual), -ne (diferente), -gt (maior que), -lt (menor que), -ge (maior ou igual) e -le (menor ou igual). Para strings, use = para igualdade e != para desigualdade.

Lembre-se de sempre incluir espaços dentro dos colchetes e colocar suas variáveis entre aspas para evitar erros com valores vazios.

challenge icon

Desafio

Fácil

Crie um script de shell chamado check_score.sh que use uma instrução if para avaliar uma pontuação de teste.

Seu script deve:

  1. Começar com a linha shebang (#!/bin/bash)
  2. Criar uma variável chamada score com o valor 75
  3. Usar uma instrução if para verificar se a pontuação é maior ou igual a 70
  4. Se for verdadeira, imprimir: You passed!
  5. Se for falsa, imprimir: You failed.

Torne o script executável e execute-o. Como a pontuação é 75, sua saída deve ser:

You passed!

Dica: Lembre-se de usar -ge para a comparação "maior ou igual a", incluir espaços dentro dos colchetes e terminar sua instrução if com fi.

Não há um editor de arquivos aqui, então escreva o arquivo diretamente pelo shell com um here-document: digite cat > check_score.sh << 'EOF', depois as linhas do script e, por fim, uma última linha contendo apenas EOF.

Experimente você mesmo

Terminal
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Playground de Terminal