[問題] shell script 迭帶命名變數

看板Linux作者 (沉澱物)時間9年前 (2016/04/20 15:13), 編輯推噓1(104)
留言5則, 4人參與, 最新討論串1/4 (看更多)
我想要用迴圈來命名陣列名稱 不曉得有沒有辦法做到?? 結構大概如下 for name in a b c do for (( i=0; i<=5; i++ )) do $name[$i] = something # 希望以name為陣列名稱 但這樣寫是不合法的 done done 最後希望得到 a, b, c 三個陣列 實際上我是需要產生幾百個陣列 不太可能一個一個做.. 請大家幫幫忙!! 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.109.112.227 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1461136434.A.FBF.html

04/20 16:17, , 1F
怎麼不要乾脆用檔案或db?
04/20 16:17, 1F

04/20 17:24, , 2F
印象中好像可以用 eval 之類的?
04/20 17:24, 2F

04/21 00:51, , 3F
for i in a b c;do for j in {0..5};do
04/21 00:51, 3F

04/21 00:52, , 4F
eval "$i[$j]=something";done;done
04/21 00:52, 4F

04/21 02:54, , 5F
null大的方法可行!!! 謝謝你><
04/21 02:54, 5F
文章代碼(AID): #1N5omo-_ (Linux)
文章代碼(AID): #1N5omo-_ (Linux)