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

관련 정보