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

Re: [bash] array e variabili



On Mon, 13 Sep 2004 23:57:12 +0200
jag <jgngnj@yahoo.com> wrote:

> ciao a tutti,
> 
> sto provando a srivere uno scriptino, ma mi sono bloccato su un
> problema:
> 
> declare -a arr[]
> a=0 # ma anche usando a=`expr 0`
> all'interno di un ciclo while ho questo codice:
> ...
> arr[$a]="$line" # $line cambia e viene salvata alla posizione $a
> a=`expr $a + 1`
> echo $a
> echo ${arr[$a]}
> ...

Ciao,
E' un problema di parsing: per forzare 2 passate (per la sostituzione
delle variabili) devi usare eval:
a=3
eval arr$a=ciccio
eval echo \$arr$a

Prima valuta $a e poi $arr3.
il '\' è necessario in quanto viene "mangiato" dalla prima passata.
Non usare [] perchè magari viene interpretato come carattere speciale.
Cmq magari ci sono altri modi.

-- 
Saluti
Mattia



Reply to: