当我有一些值的变量时,我有获取参数值的问题。我的意思是:
示例:的
./script 12 13 14 15 16
value=5
echo $value #now I see 5
$"$value" #now I want to get 16 but I don't know how to do it?
答案 0 :(得分:4)
答案 1 :(得分:1)
试试这个:
value=5 #
echo "$value" # 5
echo ${@:$value:1} # give you 1 arg starting from $value in the arg list
答案 2 :(得分:0)
你需要dereference那个变量
value=5
echo "$value" # 5
echo "${!value}" # will give you $5 or in your example 16
答案 3 :(得分:0)
bashisms本质上是不便携的。如果依靠$ {!...}来计算表达式,那么您的脚本只能在bash中运行。这可能不是问题,但如果脚本的作者幸福地没有意识到缺乏可移植性,则这是一个问题。如果不依赖于基础,这种事情是微不足道的。如果要评估字符串,请使用eval:
eval echo \$$value