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

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

Re: RES: [shell-script] break


From: Roberto Alves
Subject: Re: RES: [shell-script] break
Date: Fri, 26 May 2006 09:40:06 -0300
User-agent: Thunderbird 1.5.0.2 (X11/20060420)

Ontem mesmo eu estava fazendo um scriptzim com algo parecido.
Eu abri uma escolha para o usuário entrar com 1 ou 2 e caso ele escreva algo diferente desses 2 números ele volte para o começo.
Não sei se é a melhor solução mas funciona pra mim no ksh do AIX.

comeco (){
 echo " "
 echo "Escolha a opcao pelo numero"
 echo " 1 - Para procurar a midia"
 echo " 2 - Para sair"
 read OPCAO

 case $OPCAO in

 case $OPCAO in
 1) midiad ;;
 2) break ;;
*) echo "Deixa de ser burro! Escolha 1 ou 2." ; clear ; echo " " ; comeco ;;
 esac
         }



Espero ter ajudado.
Abraço,
Roberto Alves




Julio Cezar Neves - DATAPREVRJ wrote:
Fala Eric,
o break é usado no case (switch) do C da mesma forma que o ;; é usado no
Shell. Mas para aplicar no seu exemplo específico, acho que vc precisa usar
o :. O : tem o mesmo efeito que o nop (no operate) no assembler, isto é, não
faz nada (no cobol tb tem o next sentence que faz o mesmo, mas não conheço
paralelo em outras linguagens). Assim se seu script ficasse assim:

case $teste in 1) echo "oi"
       ;;
2) if [ $nome = 0 ]; then :
       else
           echo "oi"
       fi
       ;;

Se a variável teste tivesse o valor 2 e o nome fosse igual a 0, ele não
faria nada no if e em seguida encontraria o ;; saindo do case.

Abração,
Julio Cezar Neves
Tel:+55 21 2555-6148 / +55 21 8112-9988
Fax: +55 21 2555-6154
http://www.julioneves.com


| -----Mensagem original-----
| De: Eric Anderson [mailto:address@hidden]
| Enviada em: quinta-feira, 25 de maio de 2006 18:54
| Para: address@hidden
| Assunto: [shell-script] break
| | | Boa noite, | | O BASH tem algum comando que funcione como o break no C? | | exemplo | | case $teste in | 1) echo "oi"
|     ;;
| 2) if [ $nome = 0 ]; then | break
|         else
|             echo "oi"
|         fi
|        ;;
| | O exemplo acima está meio infeliz, no case 2 eu poderia | inverter o if, mas o script q eu fiz aqui é muito mais complexo. | | Pra quem não sabe, em C o break, nesse caso acima, iria | apenas sair do case e continuar a rodar o programa. Na BASH | tá encerrando o script. | | sds | | Eric Anderson Martins Miranda
| address@hidden
| CPD Via Net SAO
|  Tel.:11-6643-2814/6643-2815
| Cel.:11-9430-6025
| msn: address@hidden
| icq: 23164304 | | | [As partes desta mensagem que não continham texto foram removidas] | | | | --------------------------------------------------------------------- | Esta lista não admite a abordagem de outras liguagens de | programação, como perl, C etc. Quem insistir em não seguir | esta regra será moderado sem prévio aviso.
| ---------------------------------------------------------------------
| Sair da lista: address@hidden
| ---------------------------------------------------------------------
| Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

Links do Yahoo! Grupos






---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

Links do Yahoo! Grupos










reply via email to

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