Re: Testando string no shell
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 02/19/2007 12:00 AM, Leandro Moreira wrote:
> Caros,
> estou montando um sistema de dialog para incluir e excluir entradas nas
> listas do squid, previso fazer um teste pra verificar se o que esta
> sendo adicionado é um domínio, estou usando a seguinte estrutura:
Antes de mais nada, seria importante definir o que você
considera ser um domínio? Você vai se basear na RFC do DNS que
possui os TLDs e mais os domínios d países? Ou qualquer coisa
que tenha um "." no meio tá valendo?
> add_dom=$(dialog --stdout --inputbox 'Digite a String a ser bloqueada :'
> 0 0)
> [ $? -ne 0 ] && break
>
> if [ $add_dom = .$add_dom ]; then
Isso sempre vai ser falso. ;)
"a" != ".a"
Talvez o melhor seja vc usar grep ou perl-regex, algo assim
pra validar a string e verificar se ela é um domínio. Eu sei que há
scripts prontos pra PHP pra validar domínios, não deve ser difícil
achar pra outras linguagens (ou adaptar um). ;)
> echo "Domínio invalido"
> dialog \
> --title 'Domínio Inválido !!' \
> --msgbox "Domínio: $add_dom" \
> 8 40
> else
> echo "Domínio valido"
> dialog \
> --title 'Domínio cadastrado com sucesso' \
> --msgbox "Domínio: $add_dom" \
> 8 40
> echo $add_dom >> /home/leandro/teste.txt
>
> fi
> O problema é que o texte não está dando certo , sendo ou nao domínio ele
> esta adicionando a lista. Alguém pode me ajudar.
Espero que as explicações acima ajudem.
Você pode usar o sistema de expressões do bash, ou usar outra
linguagem script pra te ajudar como o awk. Uma dica interessante seria
consultar também a lista de shell-script, lá você costuma encontrar
pessoal da pesada em shell. ;)
http://br.groups.yahoo.com/group/shell-script/
> Att.
Abraço,
- --
Felipe Augusto van de Wiel (faw)
"Debian. Freedom to code. Code to freedom!"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFF2ShwCjAO0JDlykYRAs0PAJwPvUoAh8C0r/UW5t3yNB1j8E6K+QCfcdw/
/r9lHT2S6Rt4n74b494EKow=
=2vwf
-----END PGP SIGNATURE-----
Reply to: