[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Manipulação de variavel do tipo lista, pegar de 2 em
From: |
Renato de Oliveira Diogo |
Subject: |
Re: [shell-script] Manipulação de variavel do tipo lista, pegar de 2 em 2 |
Date: |
Fri, 9 Jan 2009 10:31:27 -0200 |
Opa Senhores
grato pela atenção e resposta de todos...
testei as tres sugestões passadas, e tirei a seguinte conclusão.
Devido a estrutura do digalog, eu não posso colocar um par por linha,
pois quebra a estrutura dele, então o tr ' ' '\n', não dá... a mesma
coisa usando o xargs.
Era o que eu procurava, mas descobri q num deu certo, rs.
Já a solução do Flavio, funcionou legal... e ela ainda me possibilita
(outra coisa que eu não tinha colocado no primeiro post) é que eu
posso acrescentar texto junto às variáveis... como $1 "texto"$2.
Então, a solução para o dialog meu ficou assim:
REG=$(dialog --backtitle "TEXTO" \
--stdout --nocancel --ok-label 'Voltar' \
--menu "Registros" 0 0 10 \
$( set - ${LISTA[*]} ; for D in $@; do echo $1 $2; shift 2; done ) \
Flavio, Raul e Julio, vlw pela ajuda
[]s
________________________________________________
Renato de Oliveira Diogo
Bacharel em Ciência da Computação
UNESP - Bauru
LPIC1 - Linux Professional Institute Certification - Nível 1
address@hidden
address@hidden
2009/1/8 Julio C. Neves <address@hidden>:
> Fala Renato,
> creio que a forma mais rápida de fazer isso é:
>
> echo a a b b c c d d | xargs -n2
>
> --
> Abração,
> Julio
> *Cursos de Shell e Zenity nos finais de semana:
> - Em SP ligue (11) 2125-4747;
> - Em DF ligue (61) 3223-3000;
> - Turmas fechadas em outras cidades ligue (21) 8112-9988*
>
> 2009/1/8 Renato de Oliveira Diogo <address@hidden>
>
>> Olá senhores
>>
>> preciso resolver a seguinte situação, tenho um script que gera na
>> saída padrão valores da seguinte forma: item1 val1 intem2 val2 intem3
>> val3 ...
>> aí eu pego e atribuo isso a uma variável var=($(sh script.sh))
>>
>> porem eu preciso pegar, sempre de 2 em 2 (ou seja, item1 val1) para
>> montar uma lista utilizando o dialog. Quando tenho que pegar um valor
>> por vez, com for fica facil, mas de 2 em 2 complicou...
>>
>> abaixo o que uso de 1 valor por vez
>>
>> dialog --title "" --stdout --menu "" 0 0 0 \
>> $( for D in ${LISTVAR[*]}; do echo $D 'texto'; done) ;
>>
>> a minha ideia é montar esse menu, dinamicamente onde no ficaria
>> Item1 valor1
>> item2 valor2
>> do dialog.
>>
>> alguem tem alguma ideia?
>>
>> []s
>> ________________________________________________
>> Renato de Oliveira Diogo
>>
>> Bacharel em Ciência da Computação
>> UNESP - Bauru
>>
>> LPIC1 - Linux Professional Institute Certification - Nível 1
>>
>> address@hidden <renato.diogo%40gmail.com>
>> address@hidden <renato.diogo%40yahoo.com.br>
>>
>>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>