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

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

Re: [shell-script] Depois do done minhas variaveis somem??


From: Emerson Domingues Souto
Subject: Re: [shell-script] Depois do done minhas variaveis somem??
Date: Wed, 16 Nov 2005 14:22:16 -0200

O pipe gera um subshell, cujo qual as variaveis assumem valores distintos do 
shell pai.
para resolver esta situacao ao invés de pipe use redirecionamento, da seguinte 
forma:


=============>Corte aqui<==============
#!/bin/bash
CONTADOR=1
while read i
do
        echo "$i - $CONTADOR"
        REDE="$REDE , rede$CONTADOR = '$i' "
        CONTADOR=`expr $CONTADOR + 1`
        echo -e "$REDE"    #Aqui funfa :-)
done < (cat /proc/net/dev | grep : | grep -v lo | cut -c0-6)
echo -e "$REDE"
=============>Corte aqui<==============

  ----- Original Message ----- 
  From: Rogério Poças - Desenvolvimento 
  To: address@hidden 
  Sent: Wednesday, November 16, 2005 12:43 PM
  Subject: [shell-script] Depois do done minhas variaveis somem??


  Salve lista, boa tarde a todos!

  Estou fazendo uma script para retornar as interfaces de rede de uma máquina, 
  concatenando em uma variavel porém dentro do laço do while a variável 
  ($REDE) tem o valor que preciso, porém só na ultima passagem que terá o 
  valor completo e quando saio do laço minha variável foi para o espaço, 
  alguém sabe me explicar oque eu estou fazendo de errado??

  =============>Corte aqui<==============
  #!/bin/bash
  CONTADOR=1
  cat /proc/net/dev | grep : | grep -v lo | cut -c0-6 |
  while read i
  do
          echo "$i - $CONTADOR"
          REDE="$REDE , rede$CONTADOR = '$i' "
          CONTADOR=`expr $CONTADOR + 1`
          echo -e "$REDE"    #Aqui funfa :-)
  done
  echo -e "$REDE"     #Aqui não :-(
  =============>Corte aqui<==============

  Abraços

  Rogério Poças



  ---------------------------------------------------------------------
  Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
  ---------------------------------------------------------------------
  Sair da lista: address@hidden
  ---------------------------------------------------------------------
  Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
  ---------------------------------------------------------------------
   
  Links do Yahoo! Grupos




   




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



reply via email to

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