BASH 变量替换(?)

BASH 变量替换(?)

我有以下脚本:

var1="var1value"
var2="var2value"
var3="var3value"

我想要创建以下代码:

option=$1

myvar=`echo var$option`

因此,当选项为“1”时,myvar 应该是 var1value,当选项为“2”时,myvar 应该是“var2value”等等。

我怎样才能做到这一点?

答案1

这将完成你想要的:

myvar=$(eval echo \$var$option)

然而,eval这是一个有风险的指令,所以您宁愿使用数组而不是这种变量命名,例如:

var[1]="var1value"
var[2]="var2value"
var[3]="var3value"

option=$1

myvar=${var[$option]}

相关内容