Ahhhhh, entendi o que eu estava errando. Realmente, o "read" precisa vir antes. Julio, a tua solução é muito boa também e caiu como uma luva.
Agradeço demais as soluções e a atenção. Abraços. Obs.: Estou usando o bash. Em 20 de julho de 2010 11:13, Julio C. Neves <julio.ne...@gmail.com> escreveu: > Se vc estiver usando bash é muito simples. Troque tudo que vc fez, por: > > read -n8 -p "Data: " dat > [[ $dat =~ ^[12][0-9]{3}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])$ ]] || echo > Erro: A data deve ser no formato AAAAMMDD > > Pronto taí, já com a crítica e tudo. A data digitada estará na variável > $dat. > > Se vc estiver usando o ksh, sua vida será complicada, pois vc terá de ler > char a char e ir concatenando-os para formar a data mas antes terá de ver se > não foi teclado seta ou algo do gênero. > > Abraços, > Julio > Cursos de Shell e Zenity em 2 fins de semana? > - SE turma de Shell/Zenity em 26/07 - clemis...@gmail.com > - SP turma de Shell em 14/08 - www.4Linux.com.br > - Turmas fechadas em outras cidades ligue (21)8112-9988. > > > Em 20 de julho de 2010 09:55, Édnei Rodrigues < > ednei.felipe.rodrig...@gmail.com> escreveu: > >> >> >> Bom dia pessoal. >> Estava fazendo uns testes e , na necessidade, queria que o usuário >> tivesse a liberdade de digitar somente 6 caracteres: >> >> ####Inicio do script#### >> >> clear >> tput cup 2 10; echo "insira a data" >> tput cup 2 24; read data >> ## aqui começa a minha dúvida como delimitar a data digitada em apenas >> 6números e quando o usuário preencher os 6 numeros não conseguir >> inserir mais nenhum outro valor/digito? Consigo fazer isto em shell >> script? >> >> eu vi que, dando um read --help no terminal, ele tem alguns parâmetros >> como -n e -N ou -d. No entanto, eles não funcionam no script, dando >> erro de illegal option. >> >> Sabem de algum segredo ? No google ou no man, não existe esse parâmetro! >> >> Obrigado pela ajuda. >> >> > > > [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: shell-script-unsubscr...@yahoogrupos.com.br > --------------------------------------------------------------------- > 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 > > >