Analise e desenvolvimento de sistemas

Disponível somente no TrabalhosFeitos
  • Páginas : 5 (1049 palavras )
  • Download(s) : 0
  • Publicado : 7 de abril de 2013
Ler documento completo
Amostra do texto
DicasLPI 105.2 – Editar e escrever scripts simples – Parte 03
28 de março de 2013 por Deividson Ludolf
As estruturas condicionais no bash são realizadas pelos comandos if (abordado no artigo anterior), case e select. A instrução case prosseguirá se um item indicado for encontrado em uma lista de itens divididos pelo caractere ” | “.
case
Executa os comandos de entrada do case, na qual avariável valor é igual a um dos parâmetros (padrão1, padrão2, padrão n e assim por diante…). Caso o valor não seja igual a nenhum dos parâmetros, executa os comandos da entrada.
Exemplo:
case valor in
padrão1)
lista de comandos 1;;
padrão2)
lista de comandos 2;;
padrão3)
lista de comandos 3;;
*)
lista de comandos;;
esac
Na prática
#!/bin/bash
read -p “Digite um nome de um animal:” nomeecho -n “O $nome tem “
case $nome in
porco | cachorro | cavalo | gato | elefante) echo -n “4″;;
canguru | homem) echo -n “2″;;
*) echo -n “um número desconhecido de”;;
esac
echo “pernas”
Sempre quando for construir um script ou até mesmo digitar uma sequência de arquivos é interessante estar atento à sintaxe.
Pessoal, o assunto é vasto, mas devo ressaltar o quanto é importante a prática paramassificar o conhecimento. Se você possui scripts que utilizam esse assunto na sua rotina de trabalho, estudo ou outros, envie no email ludolf@sejalivre.org para publicarmos, assim você está colaborando para o aprendizado de outras pessoas.

DicasLPI 105.2 – Editar e escrever scripts simples – Parte 02
27 de março de 2013 por Deividson Ludolf
Neste artigo iremos dar continuidade ao assuntoiniciado no artigo anterior: desvio condicional simples, ou melhor, if…then. Ele tem por finalidade tomar uma decisão e efetuar um desvio no processamento, dependendo, é claro, se a condição atribuída é Verdadeira ou Falsa.
if then else
Lembra do finalzinho do artigo anterior? Então, lá demonstramos propositalmente a utilização do if …then. O shell também utiliza o comando if, que basicamenteapresenta a seguinte sintaxe:
if <comando> – Se comando for bem sucedido
then (então)
<comando 1> – execute
<comando2>
else (senão)
<comando3> – outros
<comando4> – e assim por diante
fi (fim do teste)
Na linguagem shell, o comando if não testa uma condição (importante!!!), mas sim se uma instrução foi executada com sucesso ou não, isto é, se o código de retornoda instrução foi igual a zero ou não. Vamos aos exemplos para um melhor entendimento:
if test -x /bin/bash ; then
echo “ok”
fi
Dissecando
A instrução test avalia se a afirmação é verdadeira ou falsa, entretanto, sua utilização está atrelada a instrução condicional if. No exemplo acima, exibe ok se existir o arquivo /bin/bash.
Outra forma:
if [ -x /bin/bash ] ; then
echo “ok”
fi
Ainstrução else é um “complemento” à estrutura if e determina o bloco de instruções a executar, caso a afirmação seja falsa.
if [ -x /bin/bash ] then;
echo “ok”
else
echo “ok”
fi
As principais opções para testes de condição de arquivos, utilizando o comando test
* -r arquivo : tem permissão de leitura;
* -w arquivo : tem permissão de gravação;
* -x arquivo : tem permissão de execução;* -f arquivo: é um arquivo regular;
* -d arquivo: é um diretório;
* -u arquivo : seu bit set-user-ID está ativo;
* -g arquivo : seu bit set-group-ID está ativo;
* -k arquivo : seu sticky bit está ativo;
* -s arquivo: seu tamanho é maior que zero.
Principais opções de avaliação de test para texto
* -n texto: Verdadeiro se o tamanho de texto for diferente de zero;
* -ztexto: Verdadeiro se o tamanho de texto for zero;
* texto1 == texto2 : Verdadeiro se texto1 for igual a texto2;
* texto1 != texto2: Verdadeiro se texto1 for diferente de texto2.
Avaliação para números
* num1 -lt num2: verdadeiro se num1 for menor que num2;
* num1 -gt num2: verdadeiro se num1 for maior que num2;
* num1 -le num2: verdadeiro se num1 for menor ou igual a num2;...
tracking img