[linux] bash: substitucia premennej

Ivan Malich malich na decef.elf.stuba.sk
Pátek Srpen 16 14:57:20 CEST 2002


Caute,

Neviete mi niekto poradit, ako funguje substitucia premennych v bash-i?
Chcem urobit taketo nieco:

---begin---
#!/bin/sh

NAME_1=jozko
NAME_2=ferko
...
NAME_N=zuzka

i=1
while [ podmienka ]; do
	varname="NAME_$i"	# do $varname ulozi nazov premennej
				# obsahujucej meno i-teho cloveka
	name=???		# do $name vlozi meno i-teho cloveka
	echo $name		# vypise meno i-teho cloveka
	let i=$i+1
done
---end---

Cize v principe:

---begin---
varname="meno_pemennej_shellu"
varvalue=???
echo $varvalue	# hodnota premennej meno_premennej_shellu
---end---

Ked som to skusal, nenasiel som ziadny sposob, ako to urobit. V manuale
k bash-u som to tiez nenasiel. Napriklad takato vec

$ varvalue=${meno_premennej_shellu}

funguje, ale takato

$ varvalue=${$varname}

uz nie.
Budem velmi vdacny za kazde malicke nakopnutie, ktore ma privedie k
rieseniu.

Dakujem.

Ico

--
Ico <ico na podvodnik.cz> <malich na decef.elf.stuba.sk>
UNIX is user friendly. It's just selective about who its friends are.
Why use Windows, since there's a door???




Další informace o konferenci linux