Shell Script 1 - Básico
Neste artigo venho mostrar uma pequena introdução à linguagem de programação Shell Script.
Parte 9: Opções no seu programa
Muitos programas no Linux tem aquelas opções maravilhosas nos comandos... então vamos colocar algumas nos nossos scripts! =D
Para isso temos que entender como o bash pega as variáveis no comando, ele os interpreta assim:
$0 $1 $2 $3 $5....$9
$0 >> comando
$1 >> opção
e assim vai... quanto mais opções, mais variáveis. =D
Do jeito que vou mostrar aqui vocês poderão chamar apenas uma opção por vez, porém tem como também chamar tudo de uma só vez, mas isso vocês pesquisem. ;*
Quando precisamos fazer isso podemos realizar a tarefa usando o if ou o case, isso vai depender para o que você vai usar o código, às vezes é mais fácil com o if, mais fácil com o case. =D
Mostrando o código em português:
Passando para o código:
Pronto, agora nosso shell script tem algumas opções, só que quando chamamos apenas o comando para a operação padrão, ele cai no * do case =/. Para corrigir basta colocar um teste no * do case, se a variável $1 existir prossiga, se não continue.
Não vou explicar aqui, mas quem estiver interessado em chamar todas as opções dos programas de uma vez, pesquise sobre o shift.
Abraços.
Para isso temos que entender como o bash pega as variáveis no comando, ele os interpreta assim:
$0 $1 $2 $3 $5....$9
$0 >> comando
$1 >> opção
e assim vai... quanto mais opções, mais variáveis. =D
Do jeito que vou mostrar aqui vocês poderão chamar apenas uma opção por vez, porém tem como também chamar tudo de uma só vez, mas isso vocês pesquisem. ;*
Quando precisamos fazer isso podemos realizar a tarefa usando o if ou o case, isso vai depender para o que você vai usar o código, às vezes é mais fácil com o if, mais fácil com o case. =D
Mostrando o código em português:
caso a $1 seja igual a:
-h | --help) escreva na tela "pagina de ajuda"
-VOL | --vivaolinux) escreva na tela "site sobre Linux"
*) escreva na tela "opção invalida: $1"
-h | --help) escreva na tela "pagina de ajuda"
-VOL | --vivaolinux) escreva na tela "site sobre Linux"
*) escreva na tela "opção invalida: $1"
Passando para o código:
case $1 in
-h | --help) echo "pagina de ajuda"
-VOL | --vivaolinux) echo "site sobre Linux"
*) echo "opção invalida: $1"
-h | --help) echo "pagina de ajuda"
-VOL | --vivaolinux) echo "site sobre Linux"
*) echo "opção invalida: $1"
Pronto, agora nosso shell script tem algumas opções, só que quando chamamos apenas o comando para a operação padrão, ele cai no * do case =/. Para corrigir basta colocar um teste no * do case, se a variável $1 existir prossiga, se não continue.
if test -n $1
then
echo "opção invalida: $1"
else
exit1
then
echo "opção invalida: $1"
else
exit1
Não vou explicar aqui, mas quem estiver interessado em chamar todas as opções dos programas de uma vez, pesquise sobre o shift.
Abraços.