![]() |
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| UNIX para Dummies Perguntas & Respostas Se não tiver certeza de onde se pode postar uma pergunta Unix ou Linux, postá-lo aqui. Todos os UNIX e Linux novatos bem vindos! |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| ENSAIO comando | amatuer_lee_3 | Programação Shell Script e | 4 | 05-09-2008 08:36 |
| Utilizando grep em um teste / if | cbo0485 | Programação Shell Script e | 4 | 03-21-2008 12:29 |
| Teste de comando | JWilliams | AIX | 2 | 12-04-2007 02:53 |
| TESTE o comando | Marwan | UNIX para Dummies Perguntas & Respostas | 2 | 04-23-2007 07:51 |
| unix comando grep | pmsuper | Programação Shell Script e | 1 | 09-19-2006 03:06 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Unix grep / ensaio comando
Olá, tenho um script que verifica se o usuário entrou 8 caracteres numéricos sob a forma de AAAAMMDD (data nascimento). Se o utilizador não introduziu quaisquer caracteres numéricos, um erro será exibida: Código:
# Check to see if the 8 characters are all numbers
# If not show error essage
# And prompt user for more input
echo $char | grep -q '^[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$'
if [ $? -ne 0 ]
then
echo "You have entered non-numeric values. Please type in the form of YYYYMMDD"
read char
continue
Existe uma maneira mais simples de escrever este comando sem usar o [0-9] valor para cada campo? Qualquer ajuda será apreciada |
|
||||
|
expressão regular para números separados por vírgulas
Oi,
Obrigado pela sua resposta. Eu só quero fazer essa exigência mais clara. Leio valores para uma variável, utilizando o "read var". Estou agora validação do utilizador. O utilizador deverá introduzir os valores no formato 1,3,6 (pode entrar em qualquer valores numéricos upto n). Eu testei este número para 2. Este é o comando que eu tinha usado. leia col 1,2 ----> dados fornecidos pelo usuário echo $ col | grep-w "^ [0-9], [0-9] $" código devolvido é bem sucedida. Se ele contém qualquer outra entrada como 1, um ou uma, 1 ou a, b, retorna um código de 1. Esse código funciona bem para 2 números, mas eu quero fazer este trabalho de 'n' números. Eu já havia tentado a solução fornecida por você, mas E-comando não é reconhecido pelo meu script. TIA |
![]() |
| Marcadores |
| Tags |
| regex, expressões regulares |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|