Read não reconhece a resposta correta [RESOLVIDO]

1. Read não reconhece a resposta correta [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 25/12/2013 - 01:08h

Não entendo o que pode está acontecendo com este script aqui:

#!/bin/bash

echo 'Escolha o tema de ícones do wbar:
(a) Azenis; (b) Faenza; (c) Moka; (d) SimpleGrey'

read resposta

if [ "resposta" = "a" ]; then
cp $HOME/.wbar-azenis $HOME/.wbar

elif [ "resposta" = "b" ]; then
cp $HOME/.wbar-faenza $HOME/.wbar

elif [ "resposta" = "c" ]; then
cp $HOME/.wbar-moka $HOME/.wbar

elif [ "resposta" = "d" ]; then
cp $HOME/.wbar-simplegrey $HOME/.wbar

else
echo "Opção inválida. O Script termina aqui"

fi

Aparentemente está tudo ok com o script, mas quando eu digito uma das opções ele não reconhece como resposta válida. Aguma dica?


  


2. MELHOR RESPOSTA

Carlos A. P. Cunha
Carlos_Cunha

(usa Linux Mint)

Enviado em 25/12/2013 - 21:48h

costapha escreveu:

Alterei mas continua do mesmo jeito.

paulo@debian:~/Documentos/Scripts$ ./wbar-config.sh
Escolha o tema de ícones do wbar:
(a) Azenis; (b) Faenza; (c) Moka; (d) SimpleGrey
c
Opção inválida. O Script termina aqui

Parece que o script não está reconhecendo nenhuma tecla digitada. Já tentei substituir as letras por números e também nada feito.


Já vi o erro amigo....

Quando fizer o teste use assim $resposta

ficando assim -> if [ $resposta = "a" ]; then

testa ai!



3. Re: Read não reconhece a resposta correta [RESOLVIDO]

Carlos A. P. Cunha
Carlos_Cunha

(usa Linux Mint)

Enviado em 25/12/2013 - 19:34h

costapha escreveu:

Não entendo o que pode está acontecendo com este script aqui:

#!/bin/bash

echo 'Escolha o tema de ícones do wbar:
(a) Azenis; (b) Faenza; (c) Moka; (d) SimpleGrey'

read resposta

if [ "resposta" = "a" ]; then
cp $HOME/.wbar-azenis $HOME/.wbar

elif [ "resposta" = "b" ]; then
cp $HOME/.wbar-faenza $HOME/.wbar

elif [ "resposta" = "c" ]; then
cp $HOME/.wbar-moka $HOME/.wbar

elif [ "resposta" = "d" ]; then
cp $HOME/.wbar-simplegrey $HOME/.wbar

else
echo "Opção inválida. O Script termina aqui"

fi

Aparentemente está tudo ok com o script, mas quando eu digito uma das opções ele não reconhece como resposta válida. Aguma dica?



Amigo, substitua a sua parte por dessa forma e testa....

echo "Escolha o tema de ícones do wbar:"
echo "(a) Azenis; (b) Faenza; (c) Moka; (d) SimpleGrey"





4. Re: Read não reconhece a resposta correta [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 25/12/2013 - 19:55h

Alterei mas continua do mesmo jeito.

paulo@debian:~/Documentos/Scripts$ ./wbar-config.sh
Escolha o tema de ícones do wbar:
(a) Azenis; (b) Faenza; (c) Moka; (d) SimpleGrey
c
Opção inválida. O Script termina aqui

Parece que o script não está reconhecendo nenhuma tecla digitada. Já tentei substituir as letras por números e também nada feito.


5. Use $ antes de variáveis

Vinicius Dias
viniciusdias

(usa Debian)

Enviado em 25/12/2013 - 22:41h

Olá, amigo!
Antes das variáveis, coloque o símbolo "$".

Ex.:

$resposta


6. Re: Read não reconhece a resposta correta [RESOLVIDO]

Fernando
phoemur

(usa Debian)

Enviado em 26/12/2013 - 08:21h

PretooOO escreveu:

costapha escreveu:

Alterei mas continua do mesmo jeito.

paulo@debian:~/Documentos/Scripts$ ./wbar-config.sh
Escolha o tema de ícones do wbar:
(a) Azenis; (b) Faenza; (c) Moka; (d) SimpleGrey
c
Opção inválida. O Script termina aqui

Parece que o script não está reconhecendo nenhuma tecla digitada. Já tentei substituir as letras por números e também nada feito.


Já vi o erro amigo....

Quando fizer o teste use assim $resposta

ficando assim -> if [ $resposta = "a" ]; then

testa ai!



+1
certeza que é isso


7. Re: Read não reconhece a resposta correta [RESOLVIDO]

Paulo Dias
di4s

(usa XUbuntu)

Enviado em 26/12/2013 - 10:15h

o erro realmente está no teste.

para comparar string use os operadores == ou !=

isso não funciona:


[ "resposta" = "c" ]


tente assim:


[ "$resposta" == "c" ]



8. Re: Read não reconhece a resposta correta [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 26/12/2013 - 11:15h

Valeu galera, agora sim funcionou.

O problema era mesmo a falta do $:

if [ "$resposta" = "a" ]; then

Obrigado!!!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts