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

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

Re: [shell-script] Falha na comparacao [a-z] [A-Z]


From: Jeiks
Subject: Re: [shell-script] Falha na comparacao [a-z] [A-Z]
Date: Wed, 25 Aug 2010 10:49:01 -0300

Dá uma olhadinha: http://tiswww.case.edu/php/chet/bash/COMPAT
no item 13

nos testes aqui, eu fiz de 'a' à 'c':
touch {a,b,c,A,B,C}
ls [a-c]
ls [[:lower:]]
ls [[:upper:]]

eu uso o bash 4.1

abs

Em 25 de agosto de 2010 10:41, Jeiks <address@hidden> escreveu:

> Tiago,
>     eu já passei por esse problema antes e vi que não é não, [[:lower:]] e
> [a-z] são diferentes.
>     Eu não me lembrei da referência, pq já tem um tempo que vi isso já, mas
> o problema alí é que [a-z] é expandido para [aAbBcCdDeE.....] e por isso que
> dá problema, mas com o [[:lower:]] ele expande corretamente para caracteres
> em minúsculo. Se eu tiver um tempinho aqui, vou ver se acho a referência e
> posto pra lista.
>
> abraços
>
> Em 25 de agosto de 2010 10:31, Tiago Peczenyj <address@hidden>escreveu:
>
>
>>
>> hum... mas [:lower:] não é expandido para [a-z] não? Queria fazer um
>> teste com algum caracter encoding diferente...
>>
>> 2010/8/25 Jeiks <address@hidden <jacsonrcsilva%40gmail.com>>:
>>
>> > Olá Gabriel,
>> >    isso acontece devido a codificação utilizada em seu sistema, que tem
>> as
>> > letras em maiúsculo próximas as em minúsculo, ou seja, ao invés de ser
>> > "a,b,c,d..." é "a,A,b,B,c,C..."
>> >    Para garantir que funcione sem precisar mexer com a codificação,
>> utilize
>> > o lower e o upper, assim:
>> >
>> > case "$1" in
>> > [[:lower:]]) echo "Letra Minuscula"
>> > ;;
>> > [[:upper:]]) echo "Letra Maiuscula"
>> > ;;
>> > [0-9]) echo "Numero Inteiro"
>> > ;;
>> > *) echo "Caracter Especial"
>> > ;;
>> > esac
>> >
>> > abs
>> >
>> > Em 25 de agosto de 2010 02:20, Gabriel Marrocos <
>> > address@hidden <gabriel.marrocos%40yahoo.com.br>>
>> escreveu:
>> >
>> >>
>> >>
>> >> Boa noite a todos,
>> >>
>> >> Pessoal estou fazendo um script simples que verifica se o carácter
>> passado
>> >> como
>> >> argumento é um numero, uma letra maiúscula, minuscula ou um carácter
>> >> especial.
>> >>
>> >> Porem quando passo o argumento como A,B até X ele me retorna como uma
>> letra
>> >>
>> >> minuscula. Já se eu passar como argumento a letra Z ele me retorna
>> >> maiúscula!
>> >>
>> >> Alguém saberia me dizer se estou fazendo algo errado ou é alguma falha?
>> >>
>> >> Estou usando Ubuntu 10.04 e bash versão 4.1.5
>> >>
>> >> case $1 in
>> >> [a-z]) echo "Letra Minuscula"
>> >> ;;
>> >> [A-Z]) echo "Letra Maiuscula"
>> >> ;;
>> >> [0-9]) echo "Numero Inteiro"
>> >> ;;
>> >> *) echo "Caracter Especial"
>> >> ;;
>> >> esac
>> >>
>> >>
>> >> [As partes desta mensagem que não continham texto foram removidas]
>> >>
>> >>
>> >>
>> >
>> >
>> >
>> > --
>> > Jacson R. C. Silva
>>
>> >
>> >
>> > [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: 
>> > address@hidden<shell-script-unsubscribe%40yahoogrupos.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
>> >
>> >
>> >
>>
>> --
>> Tiago B. Peczenyj
>> Linux User #405772
>>
>> http://pacman.blog.br
>>  
>>
>
>
>
> --
> Jacson R. C. Silva
>



-- 
Jacson R. C. Silva


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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