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

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

Re: [shell-script] variaveis dentro/fora do laço


From: Eliphas Levy Theodoro
Subject: Re: [shell-script] variaveis dentro/fora do laço
Date: Wed, 24 Aug 2005 18:17:34 -0300
User-agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)

Fabricio escreveu:
esse é o laço , o problema eh que fora do laço as vars $contatotal e $creditototal nunca tem nada ... se eu coloco um echo dentro do laço , ele mostra q tem ! eh estranho , dentro do laço tem um valor , fora nao tem nda ... !!
pq isso ? :(

Essa é velhona, todo mundo cai nela.

O shell abre outro processo com o pipe; e tudo que é executado nele se perde ao final do while.

$ a=1; cat .bashrc | while read line; do let a++; done; echo $a;
1
$ a=1; while read line; do let a++; done < .bashrc; echo $a;
64

Viu a diferença? Se quiser que o while modifique a variavel de fora do laço, certifique-se que ele esteja no mesmo contexto da variável. Você vai usar arquivos temporários ou substituição de processos. Para uma explicação do segundo, dá uma olhada em
http://www.tldp.org/LDP/abs/html/process-sub.html

Ou no histórico da lista com certeza tem também.

--
Eliphas


reply via email to

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