![인덱스 에코 변수](https://linux55.com/image/167025/%EC%9D%B8%EB%8D%B1%EC%8A%A4%20%EC%97%90%EC%BD%94%20%EB%B3%80%EC%88%98.png)
루프 내부에 var를 다음과 같이 설정했습니다.
eval "PB_$i=`cat btc_pub_$i.key`"
여기서 $i는 루프의 인덱스입니다.
echo나 printf를 하고 싶어요
$PB_$i ($PB_0,$PB_1, etc)
나는 전에 시도했다
echo $PB_${i}
하지만 작동하지 않습니다
답변1
당신이 찾고있는 것이 역 참조 인 것 같습니다.
$ foo=bar
$ bar=somewords
$ printf "The value of %s is '%s'\n" "${foo}" "${!foo}"
The value of bar is 'somewords'
$ var_1=foo
$ var_2=bar
$ for i in 1 2; do v="var_${i}"; printf "%s\n" "${!v}"; done
foo
bar
그러나 일련의 숫자 접미사 변수를 사용하는 대신 배열을 살펴보는 것이 좋습니다.
$ var=("foo" "bar") # var[0]=foo; var[1]=bar
$ for v in ${var[@]}, do printf "%s\n" "${v}"; done
foo
bar