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

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

Re: case com opção de retorno e tratamento de opção


From: Anderson Junior
Subject: Re: case com opção de retorno e tratamento de opção
Date: Wed, 16 Oct 2013 18:35:02 -0000
User-agent: eGroups-EW/0.82

esse bendito w nem era pra te ido....rsrsrs

--- Em address@hidden, "Julio C. Neves" <julio.neves@...> escreveu
>
> Acho que vc tem razão Robson, mas aquela opção w) depois do *) me quebrou
> as pernas e o raciocínio.
> 
> Do jeito que vc fez, com certeza vai funcionar.
> 
> Abcs,
> Julio
> *@juliobash
> *
> A partir de 28/10 estarei ministrando um curso de 40 horas em
> Curitiba<http://www2.softsell.com.br/?system=treinamentos&id=323&action=read>
> .*
> *
> A partir de 25/11 estarei ministrando um curso de 40 horas no Rio de
> Janeiro<http://edx.srv.br/treinamento/shell-script/>
> .
> 
> 
> 
> Em 16 de outubro de 2013 12:06, Robson Alexandre
> <alexandrerobson@...>escreveu:
> 
> > **
> >
> >
> > Bom Dia a todos,
> >
> > acho q o q o Anderson quer Júlio, é com $0 é chamar novamente o programa
> > em loop.
> > Nesse caso seria melhor fazer um while : tratando as variáveis como no
> > exemplo do aurelio.net em
> > http://aurelio.net/shell/dialog/#menuloop
> >
> > #!/bin/bash
> > # Cadastro de motos
> > while :
> > do
> > clear
> > read -p "Marca: " marca
> > read -p "Modelo: " modelo
> > read -p "Cor: " cor
> > read -p "Placa: " placa
> > idmoto=`wc -l < dbmotos`
> > echo $idmoto";"$marca";"$modelo";"$cor";"$placa >> dbmotos
> > read -p "Cadastrar nova moto?[s ou n]: " opcao
> > case $opcao in
> >     [Ss]) break;;
> >     [Nn]) ./sis_cad && exit;;
> >     *)  echo -n "Opção invalida digite s ou n!"
> > esac
> > done
> >
> > Atenciosamente
> > Robson Alexandre
> >
> >
> >
> >
> > Em 16 de outubro de 2013 10:46, Julio C. Neves <julio.neves@...>escreveu:
> >
> >> **
> >>
> >>
> >> Anderson, agradeço o elogio ao meu trabalho que publiquei em
> >> http://wiki.softwarelivre.org/TWikiBar/BatePapos
> >>
> >> Dando uma otimizada no seu código:
> >>
> >> #!/bin/bash
> >> # Cadastro de motos
> >> clear
> >> read -p "Marca: " marca
> >> read -p "Modelo: " modelo
> >> read -p "Cor: " cor
> >> read -p "Placa: " placa
> >>  idmoto=`wc -l < dbmotos`
> >> echo $idmoto";"$marca";"$modelo";"$cor";"$placa >> dbmotos
> >> read -p "Cadastrar nova moto?[s ou n]: " opcao
> >> case $opcao in
> >>     [Ss]) $0 ;;
> >>     [Nn]) ./sis_cad ;;
> >>     *)  echo -n "Opção invalida digite s ou n!"
> >>         read
> >> esac
> >>
> >> Tirei o pedaço a seguir:
> >>         read opcao ;&
> >>  w) $0 ;;
> >> porque qdo se o terminador ;&, o próximo bloco será executado 
> >> *obrigatoriamente*,
> >> ou seja se não for teclado NnSs, o bloco do w.
> >>
> >> Outra coisa que acho que está furado, é o $0. Essa variável contém o nome
> >> do programa, mas antes dela é necessário algum cmd (um echo p.ex.)
> >>
> >> Abcs,
> >> Julio
> >> *@juliobash
> >> *
> >> A partir de 28/10 estarei ministrando um curso de 40 horas em 
> >> Curitiba<http://www2.softsell.com.br/?system=treinamentos&id=323&action=read>
> >> .*
> >> *
> >> A partir de 25/11 estarei ministrando um curso de 40 horas no Rio de
> >> Janeiro <http://edx.srv.br/treinamento/shell-script/>.
> >>
> >>
> >>
> >> Em 16 de outubro de 2013 01:24, Anderson Junior <
> >> andersonscinfo@...> escreveu:
> >>
> >> **
> >>>
> >>>
> >>> boa noite caros amigos, estou lendo estes artigos
> >>> http://wiki.softwarelivre.org/TWikiBar/BatePapos e aprendendo shell,
> >>> muito satisfeito e agradecido, realmente shell é o bicho, neste momento to
> >>> fazendo alguns scripts para testar oque vou aprendendo, e estou com uma
> >>> dificuldade neste:
> >>>
> >>> #!/bin/bash
> >>> # Cadastro de motos
> >>> clear
> >>> echo -n "Marca: "
> >>> read marca
> >>> echo -n "Modelo: "
> >>> read modelo
> >>> echo -n "Cor: "
> >>> read cor
> >>> echo -n "Placa: "
> >>> read placa
> >>> idmoto=`wc -l < dbmotos`
> >>> echo $idmoto";"$marca";"$modelo";"$cor";"$placa >> dbmotos
> >>> echo -n "Cadastrar nova moto?[s ou n]: "
> >>> read opcao
> >>> opcao=$(echo $opcao | tr SN sn)
> >>> case $opcao in
> >>> s) $0 ;;
> >>> n) ./sis_cad ;;
> >>> *) echo -n "Opç invalida digite s ou n!" && read opcao ;&
> >>> w) $0 ;;
> >>> esac
> >>>
> >>> meu problema é nessa linha onde ele trata se o usuario quer sair ou
> >>> digitar novo registro, caso ele apert n ou s funciona, mas se clicar 
> >>> alguma
> >>> outra coisa eu não concegui entender como tratar, qualquer ajuda é bem
> >>> vinda, criticas tbm, abraços.
> >>>
> >>> Att.
> >>> Anderson Junior
> >>>
> >>>
> >>
> >  
> >
>




reply via email to

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