>> Edit article
이름
제목
패스워드
드뎌 해결했네염 ㅜ.ㅡ;; ----------------------참고사항------------------ # 첫번째 시도 [linu@gelug linu]$ a=10 [linu@gelug linu]$ b=a [linu@gelug linu]$ echo $b a [linu@gelug linu]$ eval c='$'$b [linu@gelug linu]$ echo $c 10 # 두번째 시도 [root@gelug root]# user_name=linu [root@gelug root]# use_time=100 [root@gelug root]# eval $user_name=$use_time [root@gelug root]# echo $linu 100 ------------------------------------------------ 아주 간단히 eval로 되는군욥. 그냥 문자열 합쳐주믄 되는 것을.. 엉뚱한 삽 질만..했었음 그믄 이만 물러갑니다. (__); 참고: http://kldp.org/KoreanDoc/Shell_Programming-KLDP : --------------------참고사항--------------------------------------- : for i in `cat tmp/last.log` : do : # j=$((2+1)) or 'expr 2+1' : ((j++)) : user_name=`sed -n -e "${j}s/(/ /p" tmp/last.log|awk '{print $1}'` : use_time=`sed -n -e "${j}s/(/ /p" tmp/last.log|awk '{print $2}'` : # ${user_name}="$use_time" : echo -n $j : # $((i))="abc" <-- 이 부분임.. : # echo $((i)) <-- 출력문이지만 안됨. : echo : done : -------------------------------------------------------------------- : 갑자기 공부(?) 하면서 막혀서 그러는데요. : : 쉘에대한 참고서적 등도 둘러봤는데 없어서.. : : 위 예제에서 $i 에는 사용자 아이디가 들어가게됩니다. : : 예를 들어 위 예제를 벗어나서 말씀드리면, : : ---------------ex----------------------- : i=abc : abc=$(($abc+1)) 또는 ((abc++)) : echo ${$i} <-- 역시 에러남. : ---------------------------------------- : : 이런식으로 하려고 합니다. 즉 위에서 abc라는 값은 계속 바껴가는 것이고 욥 : : 그래서 변수명은 바뀌게 되고 그 변수가 몇개 있었는지를 알수 있게 해주 죠. : : 제가 궁극적으로 원하는 목적은 방금 말씀드린 것이 아니고 : : 중첩되는 변수를 어떻게 쓰느냐입니다. : : php 인 경우에는 : : $a="bcd"; : $$a="a"; : : 하면 되거든요.. 쉘에선 몰라서.. 읽어주셔서 감사합니다.(__); : : 참고 : : http://kldp.org/HOWTO/html/Adv-Bash-Scr-HOWTO/index.html -- 세벌사랑, 리눅스사랑, 나라사랑
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved