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

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

Falha no comando read


From: rodvilla
Subject: Falha no comando read
Date: Thu, 22 Mar 2007 18:32:03 -0200

Caros amigos, 

Ao cumprimentar os novos amigos e os antigos (andei fazendo papel de 
saudosista e reli algumas das primeiras mensagens da lista, que este ano vai 
completar 7 anos, lembra, Eriberto, Julio?). 
Apelo a todos vocês antes que vá até um terreiro pra pedir ajuda a um 
pai-de-santo, porque já tentei resolver esse problema de diferentes formas e 
não consegui encontrar uma razão plausível para o que está ocorrendo. 

Abaixo segue algumas partes do script que elaborei. 
Num determinado trecho desse bash script, inseri um comando "read" para que 
o usuário, em prompt de comando, decida que ação tomar. 
Acontece que nessa linha o comando read não funciona; no entanto, em 
determinados trechos, de teste, ele funciona, mesmo que não utilize uma 
variável para receber um valor de entrada! 
Segue a parte em que o comando não funciona e a que funciona (teste), bem 
como o trace de execução. 
Segue também a localização do bash e a versão do bash que utilizo. 
Não localizei na internet nenhuma referência a alguma limitação ou bug desse 
release de bash. 

$ which bash 
/usr/bin/bash 
$ /usr/bin/bash -version 
GNU bash, version 2.05.0(1)-release (sparc-sun-solaris2.9) 
Copyright 2000 Free Software Foundation, Inc. 

Seguem partes do código: 

#!/usr/bin/bash -xv 
# 
#... 
# 
# Funcoes 
checa_cfg_sonda () 
{ 
# ... 
  echo 
  read -p "Escolha entre (a)tualizar ou (n)ao a configuracao no B-router: " 
VAR 
  echo "VAR = <$VAR>" 
  echo 
  if [ -z "$VAR" -o "$VAR" = "n" ]; then 
      return 
  fi 
# ... 
# 
# Main 
# 
# ... 
 checa_cfg_sonda 
# ... 
#### TESTE 
read -p "Pressione <ENTER> para continuar..." 
#### TESTE 
# fim do Bash script 

------------------ 
Trace da execução: 
------------------ 
... 

+ echo 

+ read -p 'Escolha entre (a)tualizar ou (n)ao a configuracao no B-router: ' 
VAR 
+ echo 'VAR = <>' 
VAR = <> 
+ echo 

+ '[' -z '' -o '' = n ']' 
+ return 

... 

#### TESTE 
read -p "Pressione <ENTER> para continuar..." 
+ read -p 'Pressione <ENTER> para continuar...' 
Pressione <ENTER> para continuar... 
#### TESTE 
#------------------------ 

Ficarei humilde e imensamente agradecido a quem puder apontar uma luz, pois 
já esmiucei o arquivo de ponta à cabeça e não consegui encontrar uma 
explicação que não fosse uma "mariposa" obliterando um relé!... (rs) 

Grato, 

Rodolfo Villanova 




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



reply via email to

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