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

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

Re: For com duas variaveis


From: box_ferrari
Subject: Re: For com duas variaveis
Date: Sat, 26 Sep 2009 02:46:03 -0000
User-agent: eGroups-EW/0.82

--- Em address@hidden, Breno Moiana <breno.moiana@...> escreveu
>
> Assim?
> 
> $ for x in a b c d; do for y in 1 2 3 4; do echo "x=$x, y=$y";done;done
> x=a, y=1
> x=a, y=2
> x=a, y=3
> x=a, y=4
> x=b, y=1
> x=b, y=2
> x=b, y=3
> x=b, y=4
> x=c, y=1
> x=c, y=2
> x=c, y=3
> x=c, y=4
> x=d, y=1
> x=d, y=2
> x=d, y=3
> x=d, y=4
> 
> 
> 
> Breno.
> --
> 

Laço? Tem que ser um for? Não pode ser um while?

Tipo assim:


while read VAR1 VAR2 ; do
   echo "Var1=$VAR1 Var2=$VAR2"
done < <(echo 'v1 v2
v3 v4
v5 v6')

Var1=v1 Var2=v2
Var1=v3 Var2=v4
Var1=v5 Var2=v6

* note que depois de v2, v4 e v6, há uma quebra de linha.

No exemplo, usei um echo, mas suponha que você tenha um arquivo com 2 colunas e 
várias linhas, exemplo, uma relação de nomes e CPF's e queira fazer um, digamos 
assim, "for", com cada linha usando ambas as informações, nome e CPF, você pode 
usar o comando assim

cristiano@mga0-fwall-dsl:~> cat lista.txt
1var_A 1var_B
2var_A 2var_B
3var_A 3var_B
4var_A 4var_B
5var_A 5var_B
6var_A 6var_B
7var_A 7var_B
8var_A 8var_B
9var_A 9var_B

cristiano@mga0-fwall-dsl:~> while read NOME CPF ; do echo "Nome=$NOME CPF=$CPF" 
; done < lista.txt
Nome=1var_A CPF=1var_B
Nome=2var_A CPF=2var_B
Nome=3var_A CPF=3var_B
Nome=4var_A CPF=4var_B
Nome=5var_A CPF=5var_B
Nome=6var_A CPF=6var_B
Nome=7var_A CPF=7var_B
Nome=8var_A CPF=8var_B
Nome=9var_A CPF=9var_B

Era isso que você queria ou eu viajei?



reply via email to

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