[問題] 關聯式陣列建立

看板Linux作者 (藍調人生。)時間2年前 (2022/09/25 14:59), 2年前編輯推噓1(213)
留言6則, 3人參與, 2年前最新討論串1/1
HI 大家好 我有個檔案是長這樣 存成test.tmp AAA 100 BBB 200 CCC 300 我想要建個array 存這些資訊, 我查了一下是叫關聯陣列? 索引是 AAA,BBB... 值是 100,200... declare -A index while read line do index[`echo $line | awk '{print $1}'`]=`echo $line | awk '{print $2}'` done < test.tmp 我使用下列的程式驗證我的內容 for i in ${!index[@]} do echo "index $i: ${index[i]}" done linux 發現值都沒有寫進去 想請教到底我哪裡寫錯QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.200.39.99 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1664089165.A.322.html ※ 編輯: lay911225 (1.200.39.99 臺灣), 09/25/2022 15:00:01 ※ 編輯: lay911225 (1.200.39.99 臺灣), 09/25/2022 15:00:26 ※ 編輯: lay911225 (1.200.39.99 臺灣), 09/25/2022 15:00:51 ※ 編輯: lay911225 (1.200.39.99 臺灣), 09/25/2022 15:01:31

09/25 15:29, 2年前 , 1F
你沒寫錯,驗證用的程式碼第三行 echo "index $i:
09/25 15:29, 1F

09/25 15:29, 2年前 , 2F
${index[$i]}"
09/25 15:29, 2F

09/25 15:29, 2年前 , 3F
抱歉按錯成噓 等等補推
09/25 15:29, 3F

09/25 15:33, 2年前 , 4F
補推
09/25 15:33, 4F

09/25 16:37, 2年前 , 5F
for i in 後面的 "${!index[@]}" 用雙引號包起來看看
09/25 16:37, 5F

09/26 10:09, 2年前 , 6F
感謝!!我就少了一個$沒錯~
09/26 10:09, 6F
文章代碼(AID): #1ZB_nDCY (Linux)
文章代碼(AID): #1ZB_nDCY (Linux)