[Ubuntu-BR] Problema com script shell

Nilo Martins jniloms em gmail.com
Segunda Janeiro 22 19:35:59 UTC 2007


Estou iniciando meus estudo de shell script e comprei o livro Programação
Shell Linux (de Julio Cezar Neves) para facilitar esta tarefa.

Neste livro tem um exemplo que está dando erro aqui no meu Ubuntu.

O código é o seguinte: (testchar.sh)

#
#  Testa qual o tipo de um caracter recebido por parametro
#

#####  Teste da Quantidade de Parametros  #####
erro=0
if  [ "$#" -ne 1 ]
then
    echo "Erro -> Uso: testchar caracter"
    erro=1
fi

#####  Testa se o 1o. parametro tem o tamanho de um caracter  #####
case $1 in
    ?)  ;;
    *)  echo "Erro -> Parametro passado tem mais de um caracter"
        erro=2
        ;;
esac

#####  Se houve erro o programa termina, passando o codigo do erro  #####
if  [ "$erro" -ne 0 ]
then
    exit $erro
fi

case $1 in
[a-z])  echo Letra Minuscula
        ;;
[A-Z])  echo Letra Maiuscula
        ;;
[0-9])  echo Numero
        ;;
    *)  echo Caracter Especial
        ;;
esac
exit 0

O problema é que quando executo:
$ ./testchar.sh A
Letra Minuscula
------------------- > Como vocês viram deveria aparecer a mensagem Letra
Maiúscula e não Minúscula.

Um detalhe interessante quando abro o arquivo para editar no gedit ele marca
o "z" minúsculo do case com uma cor diferente.

Agradeço qualquer ajuda.



More information about the ubuntu-br mailing list