Script de validação com grep, erro de funções. [RESOLVIDO]

1. Script de validação com grep, erro de funções. [RESOLVIDO]

Francisco Soares Da Silva Junior
Junior2kan

(usa Debian)

Enviado em 18/02/2018 - 12:30h

Olá, anteriormente fiz um tópico sobre validação, retorno com um erro, estava tudo funcionando perfeitamente, só foi começar adicionar mais funções que deu erro, ele executa as mensagens que eu coloco no começo no echo, e não lê nenhuma função, e fecha o script. Alguém pode me ajudar, não sei aonde estou errando, PRECISO DE AJUDA!.

 

VLDNOME(){
read -ep " Digite seu nome: " NOME
if grep -i -e '^([[:alpha:]_.]{5,})$' <<< "$NOME";then
printf "Nome válido, vamos continuar! \n"
else
printf " NOME INVÁLIDO TENTE NOVAMENTE! \n" ; VLDNOME
fi
}

VLDEMAIL(){
read -ep "Digite seu email: " EMAIL
if grep -e '^[a-zA-Z_-.][email protected][0-9a-zA-Z.-]+\.[a-z]{2,3}$' <<< "$EMAIL";then
printf "Email válido, vamos continuar! \n"
else
printf "Email inválido, tente novamente! \n"
fi
}


VLDTEL(){
read -ep "Digite somente seu telefone residencial: " TEL
if grep -e '^\([0-9]{2}\)\s*[0-9}{4}-[0-9]{4}$'; <<< "$TEL";then
printf "Telefone válido"
else
printf "Telefone inválido"
fi
}


VLDRG(){
read -ep "Digite seu RG: " RG
if grep -E '^[0-9]{2,}.[0-9]{3,}.[0-9]{3,].[0-9]{1,}$' <<< "$RG";then
printf "RG válido"
else
printf "RG inválido"
fi
 



  


2. Re: Script de validação com grep, erro de funções.

Lucas Moraes
lucasdemoraesc

(usa Ubuntu)

Enviado em 18/02/2018 - 13:08h

Junior2kan escreveu:

Olá, anteriormente fiz um tópico sobre validação, retorno com um erro, estava tudo funcionando perfeitamente, só foi começar adicionar mais funções que deu erro, ele executa as mensagens que eu coloco no começo no echo, e não lê nenhuma função, e fecha o script. Alguém pode me ajudar, não sei aonde estou errando, PRECISO DE AJUDA!.

 

VLDNOME(){
read -ep " Digite seu nome: " NOME
if grep -i -e '^([[:alpha:]_.]{5,})$' <<< "$NOME";then
printf "Nome válido, vamos continuar! \n"
else
printf " NOME INVÁLIDO TENTE NOVAMENTE! \n" ; VLDNOME
fi
}

VLDEMAIL(){
read -ep "Digite seu email: " EMAIL
if grep -e '^[a-zA-Z_-.][email protected][0-9a-zA-Z.-]+\.[a-z]{2,3}$' <<< "$EMAIL";then
printf "Email válido, vamos continuar! \n"
else
printf "Email inválido, tente novamente! \n"
fi
}


VLDTEL(){
read -ep "Digite somente seu telefone residencial: " TEL
if grep -e '^\([0-9]{2}\)\s*[0-9}{4}-[0-9]{4}$'; <<< "$TEL";then
printf "Telefone válido"
else
printf "Telefone inválido"
fi
}


VLDRG(){
read -ep "Digite seu RG: " RG
if grep -E '^[0-9]{2,}.[0-9]{3,}.[0-9]{3,].[0-9]{1,}$' <<< "$RG";then
printf "RG válido"
else
printf "RG inválido"
fi
 

Você tem que chamar a função.
Um exemplo:
TEST() {
echo "isso é um teste"
}
TEST

LMC


3. Re: Script de validação com grep, erro de funções.

Lucas Moraes
lucasdemoraesc

(usa Ubuntu)

Enviado em 18/02/2018 - 14:14h

Você pode controlar as funções usando a variável $n, onde n é o número que representa o parâmetro passado na linha de comando.
Exemplo:
case $1 in
carne) echo "carne é bom" ;;
brasileirao) echo "vai dar Palmeiras" ;;
linux|unix) echo \"[email protected]\" ;;
esac


LMC


4. Me desculpa

Francisco Soares Da Silva Junior
Junior2kan

(usa Debian)

Enviado em 18/02/2018 - 21:44h

Estou tentando até agora, poderia dar um exemplo de como ficaria nesse script. Tentei ate fazer um script separado dando o chmod +x, para chamar a função e até agora nada


5. Re: Script de validação com grep, erro de funções.

Matheus
pylm

(usa Gentoo)

Enviado em 18/02/2018 - 22:01h

Junior2kan escreveu:

Estou tentando até agora, poderia dar um exemplo de como ficaria nesse script. Tentei ate fazer um script separado dando o chmod +x, para chamar a função e até agora nada


Você definiu a função XXX certo?
Agora você chama ela

Exemplo

 function XXX {
echo "isso é uma função"
}

XXX

O resultado vai ser "isso é uma função".


6. Duvida

Francisco Soares Da Silva Junior
Junior2kan

(usa Debian)

Enviado em 18/02/2018 - 22:19h

Eu não posso colocar isso dentro do else que está na função para ela retornar, quando estiver errado? no frente do PRINTF do ELSE por exemplo eu chamaria a função ali, se desse nome inválido.


7. AGRADEÇO A TODOS

Francisco Soares Da Silva Junior
Junior2kan

(usa Debian)

Enviado em 19/02/2018 - 15:31h

Obrigado pessoal, sou iniciante, mas um dia pretendo responder a problemas assim.
Segue o link do git, do codigo pronto
https://github.com/Junior2kan/shell/blob/master/valida2.sh






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts