var1EMI
、、、var2EMI
などvar1DDE
という名前の変数があり、var2DDE
次のように繰り返せる必要があります。
for dir in var1 var2
do
echo "EMI value for " $dir " is " ${${dir}EMI}
echo "DDE value for " $dir " is " ${${dir}DDE}
done
${${dir}EMI}
交換の問題を解決する方法がわかりません。
答え1
ksh 93には、nameref
変数の「エイリアス」を生成するためのコマンドがあります。
var1EMI=a
var2EMI=b
for v in var1 var2; do
nameref var=${v}EMI
echo "${v}EMI is $var"
done
var1EMI is a
var2EMI is b
ksh88の場合は、以下を使用する必要がありますeval
。
nameref var=${v}EMI
そして:
eval var=\$${v}EMI