2012-11-24 3 views
0

나는 이것이 정당하다는 것을 맹세 할 수 있었다. 이제 내가 왜 내가 오류를 얻고 있는지 전혀 모른다.연관 배열 키 내부의 언 바운드 변수

여기 내 스크립트입니다 :

file is test1 
    key is key1 
    set stats[test1-key1] to 0 
    test1-key1 
    stats is 0 
    file is test1 
    key is key2 
    set stats[test1-key2] to 0 
    test1-key2 
    stats is 0 
    file is test1 
    key is key3 
    set stats[test1-key3] to 0 
    test1-key3 
    stats is 0 
    file is test1 
    key is key4 
    set stats[test1-key4] to 0 
    test1-key4 
    stats is 0 
    file is test1 
    key is key1 
    ./runMe.sh: line 117: test1: unbound variable 

처음 4 반복을 위해 잘 작동하는 것 같다 :

115: echo "file is $file" 
116: echo "key is $key" 
117: if [[ ! ${stats["$file-$key"]:-} ]]; then 
118:  stats["$file-$key"]=0 
119:  echo "set stats[$file-$key] to 0" 
120:  echo "$file-$key" 
121:  echo "stats is ${stats["$file-$key"]}" 
122: fi 
123: stats["$file-$key"]=$((value + stats["$file-$key"])) 

여기 내 출력합니다. 그런 다음 첫 번째 키가 설정되었는지 (이 시점에서 였는지) 테스트하려고 시도하면 실패합니다. 무슨 일 이니?

+0

전체 코드를 표시하십시오. –

답변

0

나는 두 실행 사이에이를 호출했다 : 나는 변수가 무엇인지 undeclare하지 않을 것이라고 가정

unset stats 

.

관련 문제