[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Duvida sobre impressao de variavel
From: |
Ivan lopes |
Subject: |
Re: Duvida sobre impressao de variavel |
Date: |
Thu, 22 Oct 2009 07:27:04 -0200 |
solucao:
primeiro pega-se a entrada
VETOR=(
$( cat - )
)
agora usa-se um for para tratar a entrada
....
;-)
2009/10/22 Ivan lopes <address@hidden>
> Amigos pq do erro??? Seria devido ao final da stream de leitura????
> A varia'vel VETOR aparece vazia fora do loop e nao imprime nada ....
>
> OBS: olhem o uso do 'cat -' seguido de pipe
>
>
> =*= Descricao =*=
>
> Problema:
> Variavel aparece com valor nulo.
>
> Minha opinião:
> Eu acho q isso ocorre devido ao final do pipe ...
>
> uso:
> $ ls *.cpp | ./ex.sh
>
> saida desejada:
> $ ls example_01.cpp example_02.cpp example_03.cpp | ./ex.sh
> VETOR = example_01.cpp
> VETOR = example_01.cpp example_02.cpp
> VETOR = example_01.cpp example_02.cpp example_03.cpp
> VETOR = example_01.cpp example_02.cpp example_03.cpp
>
> saida obtida:
> $ ls example_01.cpp example_02.cpp example_03.cpp | ./ex.sh
> VETOR = example_01.cpp
> VETOR = example_01.cpp example_02.cpp
> VETOR = example_01.cpp example_02.cpp example_03.cpp
> VETOR =
>
>
> $ ls *.cpp
> example_01.cpp example_02.cpp example_03.cpp
>
> $ cat ex.sh
> #!/bin/bash
>
> declare -a VETOR
> i=0
> cat - | while read LINHA
> do
> VETOR[i++]=$LINHA
> echo VETOR = ${VETOR[*]}
> done
> # fora do loop!
> echo VETOR = ${VETOR[*]}
>
>
>
[As partes desta mensagem que não continham texto foram removidas]