2015-03-17 5 views
0

Давайте рассмотрим это на примере. Пример сценарий КШ, как показано ниже:Значение переменной ksh

ab=123 
c=a 
d=b 
echo "${c}${d}" # prints ab, but need to print contents of $ab ie. 123 
echo "$ab" # prints content of $ab i.e. 123 

Как распечатать содержимое varible сформированного через "${c}${d}" т.е. содержание $ab образовавшегося

ответ

1

Вы можете использовать Eval для достижения этой цели:

eval y='$'${c}${d}; echo $y 
2

Если у вас есть ksh93, вы можете использовать функцию nameref (от here:

# ab=123 
# c=a 
# d=b 
# typeset -n ref=$c$d 
# echo "${!ref} = ${ref}" 
ab = 123