看板 Linux 關於我們 聯絡資訊
小弟的SCRIPT中,需要將參數中的值,作為變數名稱,也就是「$$1」的意思。 Shell Script當然是不可以這樣子寫。請版上先進指導,謝謝! 讓小弟將問題描述得更清楚點: 假設我的Shell Script 執行「Shellname AA」 那麼 Shell Script中 $1的值就等於AA; 執行「Shellname BB」 那麼 Shell Script中 $1的值就等於BB; 在程式中,小弟宣告了 VAR_AA="123" VAR_BB="456" 小弟希望能夠依據傳進來的參數值,來取得 VAR_$1的值(*123或456*)。 也就是 $(VAR_$1) <=這是錯誤的語法啦..:-Q 請問該如何解決呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.176.5
Adama:為何不用switch case? 10/07 13:00
NGCat:因為參數值很多,用Switch Case又臭又長,就是想縮短SCRIPT 10/07 16:24
NGCat:程式短也比較好維護。 10/07 16:25
carrlyea:eval "NEW_VAR=\$VAR_$1"; echo $NEW_VAR 10/07 21:32
NGCat:感謝carrlyea的幫忙,問題終於解決了,謝謝呵=^_^= 10/08 10:33
carrlyea:不用客氣^_^ 10/08 17:50