Uma maneira de fazer isso é usando o "eval" Mas eu realmente acho uma solução nao mto elegante, e to sem tempo pra bolar outra.
[EMAIL PROTECTED]:~$ unset VAR1 VAR2 VAR3 VAR0 VAR4 i [EMAIL PROTECTED]:~$ echo $VAR1 $VAR2 $VAR3 $VAR0 $VAR4 $i [EMAIL PROTECTED]:~$ while read LINHA; do let i++; eval VAR$i=$LINHA; done < <(echo -e "teste1\nteste2\nteste3\nteste4") [EMAIL PROTECTED]:~$ echo $VAR1 $VAR2 $VAR3 $VAR0 $VAR4 $i teste1 teste2 teste3 teste4 4 [EMAIL PROTECTED]:~$ ou pra exibir mais inteligente: [EMAIL PROTECTED]:~$ for ((x=1; x<=$i; x++)); do eval echo \$VAR$x; done teste1 teste2 teste3 teste4 [EMAIL PROTECTED]:~$ Como disse.. não achei elegante, mas funciona. Flavio do Carmo Junior On 3/28/07, Bruno Damada <[EMAIL PROTECTED]> wrote: > > Alguem sabe como faz pra mim usar um checklist do dialog e que ele de > os resultados colocando uma variavel no while para cada resultado... > > estilos=$( dialog --stdout \ > --separate-output \ > --checklist 'Você gosta de:' 0 0 0 \ > rock '' ON \ > samba '' OFF \ > metal '' ON \ > jazz '' OFF \ > pop '' ON \ > mpb '' OFF ) > > echo "$estilos" | while read LINHA; do echo "--- $LINHA"; done > > agradeço. > > > [As partes desta mensagem que não continham texto foram removidas]
