Shell Script 1 - Básico

Neste artigo venho mostrar uma pequena introdução à linguagem de programação Shell Script.

[ Hits: 83.803 ]

Por: Perfil removido em 10/10/2010


Controle de fluxo com o case



Usando o case

O case salva nossas vidas quando precisamos de opções no programa, ou simplesmente um menu, eu adoro utilizar ele pois é realmente muito simples, a única desvantagem dele com o if é que ele não permite que façamos testes com as variáveis, porém tudo tem um jeito.

Explicando a lógica em português...

#exibindo o menu
escreva_na_tela " 1) apagar o arquivo"
escreva_na_tela " 2) criar o arquivo"
escreva_na_tela " 3) apagar tudo"

armazene-a-variavel menu

caso $menu seja

1) apagar arq ;;
2) criar arq ;;
3) apagar * ;;
*) escreva na tela "opção invalida" ;;

Passando para o código:

echo "1) apagar arquivo"
echo "2) criar arquivo"
echo "3) apagar tudo"

read menu

case $menu in

1) rm arq ;;
2) touch arq ;;
3) rm *
*) echo "Escolha uma opção valida"

Ou seja, o case compara a variável menu com os bytes antes do ) e se for igual executa os comandos contidos nele, você pode adicionar mais de um comando separando eles por ";", porém lembre-se de finalizar a linha com ";;".

O legal também é a opção "*", já que se o usuário digitou algo errado vai cair nesta opção, mas pense, e se o usuário cabeçudo digitou "um" ao invés de 1?

echo "1) apagar arquivo"
echo "2) criar arquivo"
echo "3) apagar tudo"

read menu

case $menu in

1 | um) rm arq ;;
2 | dois) touch arq ;;
3 | tres) rm *
*) echo "Escolha uma opção valida"

Sendo assim os comandos serão os mesmos se o usuário digitar "1" ou "um", já que na estrutura de decisão o | tem valor de OU lógico. =D

Página anterior     Próxima página

Páginas do artigo
   1. Afinal, o que é Shell Script?
   2. Lidando com variáveis
   3. Lendo variáveis
   4. Controle de fluxo com o if
   5. Controle de fluxo com o case
   6. Controle de fluxo com while
   7. Usando funções
   8. Vamos à GUERRA, ops... ao debug!
   9. Opções no seu programa
Outros artigos deste autor

Usando aMSN com plugin Music com suporte ao Juk e Amarok

Linux: For Human Beings?

Introduzindo um pouco mais a fundo o shell script

Instalação e configuração do gdesklets no Slackware 10

Instalação de um servidor de mensagens instantâneas Openfire na sua rede com clientes Microsoft Windows e cliente Jabber Exodus

Leitura recomendada

Introduzindo um pouco mais a fundo o shell script

Enviar e-mail pelo terminal com mutt

Programar em Shell - Script só para os baixinhos

AWK - Manipulação de arquivos de texto

Pipelines (Canalizadores)

  
Comentários
[1] Comentário enviado por Sir.Guil em 11/10/2010 - 15:46h

Parabéns, pelo seu artigo, vai ajudar muita gente a começar a automatizar as coisas que estão acostumados a fazer.

[2] Comentário enviado por xerxeslins em 12/10/2010 - 02:02h

Boa! Quero mais =D~

[3] Comentário enviado por deza_tux em 13/10/2010 - 07:43h

Muito bom parabens =]

[4] Comentário enviado por removido em 25/10/2010 - 14:00h

Muito bom, bem claro e objetivo. Parabens.

[5] Comentário enviado por removido em 04/11/2010 - 14:59h

valeu ae galera =D, muita coisa que sei de shell script, aprendi aqui, comprei até um livro sobre o assunto, onde me aprofundei mais, então resolvi repassar meu conhecimento para quem vem chegando, acho que isso sim é ser livre (:

[6] Comentário enviado por wellingtonccr em 25/11/2010 - 13:49h

pow, o artigo ta bom, eu to começando a trabalhar com shell script agora, espero aprender bastante :)


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts