Adiciona texto a cada valor durante o looping e imprime-os em uma matriz?

3

Estou tentando adicionar um texto a todos os valores no array enquanto faço um loop por eles.

Eu tentei isso:

for value in "${array[@]}"
do
    echo "--" "$value"
done

Ele só adicionará "-" uma vez. E isso está no começo da saída.

Eu tentei printf também, assim:

printf "%s--" "${array[@]}"

O mesmo resultado.

Eu adiciono meus valores assim:

array+="1"
array+="2"
array+="3"

Declaro minha matriz assim:

array=()

Também tentei:

declare -a array

Este é o comportamento correto, ou estou fazendo algo errado?

    
por gel 14.12.2016 / 14:04

1 resposta

6

Para adicionar a um array, você precisa usar parênteses:

array+=(1)
array+=(2)

A maneira como você usou você adicionou todos os valores ao primeiro elemento da matriz.

    
por 14.12.2016 / 14:08

Tags