如何从 KSH 中的字符串名称检索环境变量

如何从 KSH 中的字符串名称检索环境变量

我有以下变量:

x="envVar"

“envVar”是我的环境变量名称之一,其中包含路径(按实例的文件夹)。所以我想做

cd $x 

但它不起作用。如何使用 x 的值作为环境变量?

我无法让它与“eval”一起工作。

答案1

如果您有 ksh 93,则可以声明x为对变量名称的引用:

$ ksh --version
  version         sh (AT&T Research) 93u+ 2012-08-01
$ ksh -c '
    envVar=foo
    x=envVar
    nameref x
    echo $x
'
foo

相关内容