내가 여기서 뭘 잘못하고 있는 걸까?
A_B_NAME="something"
X=A
Y=B
RESULT=`echo \${X}_\${Y}_NAME`
echo ${RESULT}
결과적으로 나는 항상 A_B_NAME을 얻지만 "뭔가"를 원합니다.
감사해요!
남자 이름
답변1
여기에서 사용할 수 있습니다 eval
(표준).
eval "RESULT=\$${X}_${Y}_NAME"
또는 bash
구체적으로:
varname=${X}_${Y}_NAME
RESULT=${!varname}
그런 다음:
printf '%s\n' "$RESULT"
기억은 echo
임의의 데이터를 출력하는 데 사용할 수 없으며 매개변수 확장은 목록 컨텍스트에서 인용되어야 합니다.