bash premenne

Marian Cavojsky cavo+konf na cavo.sk
Pondělí Září 17 11:36:07 CEST 2007


On Mon, Sep 17, 2007 at 11:18:26AM +0200, Ondrej Scecina wrote:
> Ahoj.
> 
> Chcem sa opytat, ci je mozne nieco taketo:
> 
> #!/bin/sh
> 
> for i in `seq 1 $#`
> do
> 	echo ${$i}
> done
> 
> Proste, aby sa v kazdej iteracii vypisovalo postupne $1, $2, ...
> Viem, ze je to mozne riesit cez shift, ale zaujima ma, ci sa to da spravit aj 
> principom, ktory som napisal.
> 
> V tomto priklade by to cez shift neislo:
> 
> i=1
> a1=abc
> 
> echo ${a$i}	// chcem vypisat $a1

man bash

hladajte eval

i=1
a1=abc
eval "tmp=\$a${i}"
echo $tmp

-- 
Marian



Další informace o konferenci Linux