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 qualquer tomada de decisão. Mas e se você quiser que seu script faça coisas diferentes com base em certas condições? É aí que entra a instrução if.
A declaração if permite que seu script tome decisões. Ela verifica se uma condição é verdadeira e, se for o caso, executa um bloco de código. Aqui está a estrutura básica:
#!/bin/bash
age=18
if [ $age -ge 18 ]; then
echo "You are an adult"
fiA condição vai dentro de colchetes com espaços ao redor dela. A palavra-chave then marca o início do código a ser executado, e fi (if soletrado 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"
fiOperadores 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.
Desafio
FácilCrie um script shell chamado check_score.sh que usa uma instrução if para avaliar uma pontuação de teste.
Seu script deve:
- Comece com a linha shebang (
#!/bin/bash) - Crie uma variável chamada
scorecom o valor75 - Use uma instrução if para verificar se a pontuação é maior ou igual a 70
- Se verdadeiro, imprima:
You passed! - Se falso, imprima:
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
-gepara comparação "maior ou igual a", inclua espaços dentro dos colchetes e termine sua instrução if comfi.
Experimente você mesmo
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
4Diretórios
Criar um DiretórioCopiar um DiretórioMover e Renomear um DiretórioExcluir um DiretórioResumo - Operações com Diretórios7Conteúdo do Arquivo
Head e TailContagem de PalavrasComando SortComando UniqGrep BásicoGrep com FlagsResumo - Detetive de Texto10Projeto Analisador de Log
Visão Geral do ProjetoVisualizando o Arquivo de Log13Fundamentos de Shell Scripting
O Que É Um Script de ShellCriar e Executar um ScriptVariáveis em ScriptsEntrada do Usuário em ScriptsInstrução IfLaço ForLaço WhileResumo - Adivinhador de Números2Navegação
Imprimir Diretório de TrabalhoListar ArquivosMudar DiretórioCaminhos Absolutos vs RelativosDiretório Home e RaizResumo - Encontre Seu Caminho8Redirecionamento
Saída PadrãoSobrescrever em um ArquivoAnexar a um ArquivoEntrada PadrãoErro PadrãoRecapitulação - Construtor de Log3Arquivos
Criar um ArquivoLer um ArquivoCopiar um ArquivoMover e Renomear um ArquivoExcluir um ArquivoResumo - Operações com Arquivos6Curingas e Padrões
O Curinga AsteriscoO Curinga InterrogaçãoCuringas de ColchetesCombinando CuringasResumo - Operações Seletivas9Pipes
O Que é um PipeEncadeando Dois ComandosEncadeando Múltiplos ComandosPipe com GrepResumo - Pipeline de DadosPratique por conta própria: Playground de Terminal