loop for utilizando parêntese (( Manual .-Comando composto

for i in $(seq 1 5)  ; do

echo $i ; done

O mesmo que:

for ((i=1 ;  i <= 5 ; i++))  ; do 

echo $i ; done 

O valor inicial da variável é descrito como (i=1). O limite até onde o valor da variável  pode chegar é especificado usando (i <= 5) ou seja a variável i pode chegar até o valor 5 somente mais que isso será parado o loop.  (i++) significa que a cada loop o valor da variável será somado +1.

 Fazer com que a variável seja somado +2 

for ((i=1 ; i <= 40 ; i=i+2)) ; do 

echo $i ; done

1..39  Parou no 39 porque se somar 39+2=41 e 41 é maior que 40, e o limite de quantas vezes o loop for vai ser executado é (i <= 40). A seta diz que o valor máximo que a variável i pode chegar é 40 portanto mais que isso irá parar o loop.

Duas  variáveis dentro do loop for 

for ((i=1, x=6 ; i <= 35 ; i++, x=x+2))  ; do 

echo $i -- $x ; done

1..35 Parou no 35 simplesmente porque a seta diz que o limite do valor da variável i é até 35 portanto o loop for será executado apenas 35 vezes.  A virgula é para separar variáveis diferentes.

Loop for infinito

for (( ;  ; )) ; do 

echo LOOP sem INICIO e Sem FIM press CTRL C=stop loop

done 

Não foi definido o valor inicial e também não foi definido o valor final portanto é infinito já que não tem começo e também não tem fim.






Comentários

Postagens mais visitadas deste blog

Script precisa do sudo para dar a permissão ao um comando fazer algo ....

Como resolver problema de undefined reference to `uuid_unparse_lower@UUID_1.0' APLICATIVO-DO-XORG Smproxy

Quando compila o NSS da o erro: C_Initialize failed: 0x00000030, CKR_DEVICE_ERROR