Tenta esse script aqui... Vai ficar legal..
-
#!/bin/bash
SN=2
while [[ $SN != [snSN] ]];do
read -n 1 -p 'Responda [S/N]' SN
echo
done
echo ok. Vc respondeu correto
-
Em Qua, 2006-08-16 às 12:41 +, daniel_zi escreveu:
> Olá!
>
> Num script que tenho, acontece u
Fala Daniel,
a melhor maneira é a pouco usada contrução [[...]]. Como seu uso vc pode
usar os padrões (patterns) do Shell. Assim sendo, vc poderia fazer uma lista
da seguinte forma:
[[ $YN == [SNsn] ]] && echo resposta boa.
Maiores detalhes, vc já sabe, www.julioneves.com
Abraços,
Julio
:wq
Em
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
daniel_zi escreveu:
>
>
> existe uma maneira de eu resumir isso aí? Tipo:
>
> if [ "$YN" = "y|Y" ] || [ "$YN" = "n|N" ]; then
Sugestão.
read YN
YN=`echo $YN | tr [:lower:] [:upper:]`
if [ $YN = "S" ]; then
echo "SIM"
else
echo "NAO"
Trabalhando com perguntas e respostas:
case "$YN" in y|Y) echo sim ;; n|N) echo nao ;; *) echo invalido ;; esac
com uma opção default:
read -p 'pergunta [Y/n]: ' YN
case "$YN" in n|N) echo nao ;; *) echo sim ;; esac
read -p 'pergunta [y/N]: ' YN
case "$YN" in y|Y) echo sim ;; *) echo nao ;; esa
ho $VARIAVEL | tr N n` = n # tranforma N n em n
> `echo $VARIAVEL | tr Y y` = y # || Y y em y
>
> COM SUBSTITUIÇÃO DE VAIRAVEIS;
>
> prompt> variavel=Y
>
> prompt> teste=${variavel/Y/y}
> prompt> echo $teste
> s
>
>
> Espero ter ajudado
>
> []'s
>
> teste=${variavel/Y/y}
prompt> echo $teste
s
Espero ter ajudado
[]'s
Reinaldo
>From: "daniel_zi" <[EMAIL PROTECTED]>
>Reply-To: shell-script@yahoogrupos.com.br
>To: shell-script@yahoogrupos.com.br
>Subject: [shell-script] Comparações
>Date: Wed,
Olá!
Num script que tenho, acontece uma interação com o usuário através de
perguntas, como:
---
echo "Você deseja prosseguir? (s/n) "
read YN
--
Como percebem o usuário somente tem que digitar s ou n. Para min
tratar isso eu faço o seguinte esquema.
if [ "$YN" = "y" ] || [ "$YN" = "Y" ]