[問題] 關聯式陣列建立

作者: lay911225 (藍調人生。)   2022-09-25 14:59:22
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
作者: sleepylizard   2022-09-25 15:29:00
你沒寫錯,驗證用的程式碼第三行 echo "index $i:${index[$i]}"抱歉按錯成噓 等等補推補推
作者: goldie (阿良)   2022-09-25 16:37:00
for i in 後面的 "${!index[@]}" 用雙引號包起來看看
作者: lay911225 (藍調人生。)   2022-09-26 10:09:00
感謝!!我就少了一個$沒錯~
作者: Typebrook (Pham)   2022-10-01 19:34:00
其實不需要用 awk 讀資料啦, read field1 field2 就行

Links booklink

Contact Us: admin [ a t ] ucptt.com