On 10-Jul-2003 Rodrigo Faria Tavares wrote:
>#/bin/bash
> 
> $i = "13";
> $j = "25";
> for $i in $i -lt 25 $i++
> do
> echo "192.168.$i.0"
> done

Rio de Janeiro, 10-Jul-2003

C�us!! Parece BASIC! E misturado com alguma outra coisa!

As vari�veis do shell tem o valor atribuido apenas com o nome.

i=13
j=25

O "for" do shell opera somente com uma lista de elementos. Por exemplo:

for i in 13 14 15 16 17 18 19

Se voc� quiser fazer a vari�vel percorrer um intervalo, precisa ser feito
com "while":

i=13
i=25
while [ $i -lt $j ] ; do
        ...
        i=`expr $i + 1`
done

Esta � a vers�o port�vel, vai funcionar em sh e ksh, tamb�m em outros
sistemas. Em bash, voc� pode usar outra sintaxe para incrementar a vari�vel:

        i=$[ $i + 1 ]

Ou voc� pode ser criativo na hora de usar o "for":

i=13
j=25
for i in ` yes "" | cat -n | head -$[ $j - 1] | tail +$i ` ; do
        ...
done


-----
Paulo F. Sedrez
Diretor Presidente
Weavers Network Consulting      Fone/Fax: +55-21-2233-1633
http://www.weavers.com.br       [EMAIL PROTECTED]
--------------------------
---------------------------------------------------------------------------
Esta lista � patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br

Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utiliza��o da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html

Responder a