shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RES: [shell-script] critica de dados no shell - RESOLVI!!!


From: Julio Cezar Neves - DISB.O
Subject: RES: [shell-script] critica de dados no shell - RESOLVI!!!
Date: Thu, 24 Aug 2000 15:38:29 -0300


> ----- Mensagem original -----
> De:           Renato Marques Alvim Neto [SMTP:address@hidden]
> Enviada em:           quinta-feira, 24 de agosto de 2000 04:17
> Para:         address@hidden
> Assunto:              [shell-script] critica de dados no shell -
> RESOLVI!!!
> Prioridade:           Alta
> 
> Alo, amigos!
> 
> Consegui agora (duas horas depois que enviei o pedido de ajuda,
> resolver o problema da critica de dados!
> 
> Eis como fiz :
> 
> read GJ
> 
> while [ 1 -eq 1 ]
> do
>   case $GJ in
>     [a-z]) read GJ;;
>     [A-Z]) read GJ;;
>     [1-9]) echo 'Agora sim !';
>            break;;
>         *) read GJ;;
>   esac
> done  
> 
> Funcionou bonito!!!
> 
> Mas se alguem quizer me mostrar outra solucao, ou uma solucao mais
> elegante, agradeco
> muito...
> 
> 
        Grande Renato!
        eu faria assim:

        GJ=
        while true
        do
                case $GJ in
                        [1-9])
                                echo "Agora sim!"
                                break
                                ;;
                        *)
                                read GJ
                                ;;
                esac
        done

        O comando true sempre te devolve verdadeiro (como não podia deixar
de ser!) fazendo desta forma um loop "forever".

        Eu gosto desta construção com o comando true pq é muito intuitiva na
hora da manutenção.

        Outro comando parecido é o yes que sempre te responde "sim" (deveria
ser um comando feminino, né? :oD). Experimente o seguinte:

        prompt> alias rm="rm -i"
        prompt> > xpto1
        prompt> > xpto2
        prompt> > xpto3
        prompt> > xpto4
        yes | rm xpto[1-4]

        Desculpe se me alonguei, mas acho estes 2 comandos parecidos e bem
maneiros.

        Um abração,
        Julio


reply via email to

[Prev in Thread] Current Thread [Next in Thread]