[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Erro usando o case
From: |
Nilo Martins |
Subject: |
Erro usando o case |
Date: |
Mon, 22 Jan 2007 16:07:20 -0300 |
Olá pessoal, essa é minha primeira mensagem para a lista.
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.
Não vejo nenhum problema no script. Será alguma configuração do meu bash?
Um detalhe interessante quando abro o arquivo para editar no gedit ele marca
o "z" menúsculo do case com uma cor diferente.
Agradeço qualquer ajuda.
[As partes desta mensagem que não continham texto foram removidas]
- Erro usando o case,
Nilo Martins <=