for문에 입력을 변수이름으로 설정하는 방법

leeki07의 이미지

소소만 보고 살짝 바꾸어서 장비의 Log확인을 하다가
이번에 조금 많이 바꾸어 보려고 시도중입니다.
아래의 표현이 가능하게 되면 하려는 것이 좀더 쉬워질 수 있는데.
좋은 방법이 있으면 알려주세요.

$ cat test.sh
List="temp1 temp2 temp3"
for i in $List
do
$i="haha"
done
echo "$temp1"
echo "$temp2"
echo "$temp3"

출력이 되었으면 하는 것은...
haha
haha
haha
위와 같이 나오는 것인데...
test.sh: 5: =haha: not found
test.sh: 5: =haha: not found
test.sh: 5: =haha: not found
<공란>
<공란>
<공란>
으로 나옵니다. 어떻게 하면 할 수 있나요??

qiiiiiiiip의 이미지

eval "${i}=haha"

좀 더 복잡한 경우에 대해서는 아래를 참고하세요~

https://kldp.org/node/142540

leeki07의 이미지

감사합니다. 친절하게 링크까지... 해결되었습니다.