Na programação Bash, a declaração do caso ajuda a simplificar condicionais complexos quando houver várias opções diferentes. Em vez de usar declarações aninhadas, podemos usar a declaração do caso para tornar o código da basquete mais legível e sustentável.
A declaração de caso BASH compartilha semelhanças com JavaScript e C Switch Declaração. No entanto, a principal diferença é que, uma vez que corresponda a um padrão, ele não procura por nenhuma correspondência de padrão adicional.
Este guia abordará o básico da declaração de caso Bash com vários exemplos.
Declaração do caso Bash
A estrutura fundamental da declaração do caso é a seguinte.
casoem )
declarações
;;)
declarações
;;
*)
declarações
;;
ESAC
Aqui está um breve colapso da estrutura:
Ter um entendimento da declaração Bash if-Else é benéfico para entender e dominar a declaração do caso Bash.
Exemplos de declaração de caso de bash
Declaração de casos usando valores numéricos
Agora que sabemos o básico, hora de verificar em ação. Dê uma olhada no seguinte script.
#!/BIN/BASH
eco -n "Digite o valor:"
Leia o valor
Caso $ valor em
1)
eco "um" ;;
2)
eco "dois" ;;
3)
eco "três" ;;
4 | 5)
eco "maior que três" ;;
*)
eco "valor desconhecido" ;;
ESAC
Salve o script. Marque como executável.
$ chmod +x amostra.sh
Agora, execute o script.
$ ./amostra.sh
O script pedirá para inserir um valor. Se o valor corresponder a algum dos padrões, ele executará a cláusula de correspondência. Se nenhuma correspondência foi encontrada, ele corresponderá à cláusula padrão.
Declaração de casos usando strings
No próximo exemplo, usaremos strings para corresponder aos valores.
#!/BIN/BASH
eco -n "Entre no planeta:"
Leia o planeta
caso $ planeta em
Mercúrio | Vênus | Terra | Marte | Júpiter | Saturno | Urano | Netuno)
eco "$ planeta é um planeta do sistema solar"
;;
Plutão)
eco "$ planeta é uma planet anã"
;;
"Planet Nine")
eco "$ planeta ainda não descoberto"
;;
*)
eco "não do sistema solar"
;;
ESAC
O script será executado exatamente como o primeiro exemplo. Ele pedirá um nome de planeta, verifique se a entrada corresponde a qualquer cláusula e executará a cláusula de correspondência.
Se você examinou cuidadosamente, você notará que o "Planeta nove" é o único valor embrulhado nas citações. É porque há espaço nele. Usando citações, estamos dizendo ao shell para tratá -lo como parte de um único padrão.
Sensibilidade do caso na declaração de caso
Observe que no último exemplo, a entrada é sensível ao minúsculas. Este é o comportamento de festa padrão. No entanto, podemos dizer à Shell para executar o script no modo insensível ao caso.
Para fazer isso, adicione a seguinte linha no início do script.
$ shopt -s nocasematch
O script deve ficar assim.
Agora, teste o script. Insira o valor com um caso diferente.
$ ./amostra.sh
Pensamento final
Este guia abrange o básico das declarações do caso Bash. Ele também demonstra como implementá -los em scripts bash. Você deve se sentir confortável usando a instrução CASE. As declarações de caso Bash são frequentemente usadas para passar os parâmetros para scripts de conchas de uma linha de comando. Por exemplo, os scripts inits usam declarações de caso para iniciar, parar e reiniciar serviços. Depois de ler este guia, você poderá implementar a declaração de caso Bash em seus scripts.
Computação feliz!