早上好,我需要動態更改變數的名稱。我做了一些測驗。我的測驗腳本是這樣的:
i=5
range5min=777
varname="range${i}min"
echo ${!varname}
#$`echo $varname`=555
$varname=555
echo $range5min
我可以通過以下方式訪問其內容:
echo $ {! Varname}
但是我不能給一個動態創建的變數設定一個值,也就是說,我不能用相等的值來賦值。我嘗試了這兩種方法:
$ `echo $ varname` = 555
$ varname = 555
我想做的是在 for 中創建新變數,具體取決于 for 期望的回圈數。
uj5u.com熱心網友回復:
你可以使用printf:
printf -v "$varname" '%s' "555"
但請注意,這種型別的編程并不真正推薦,因為它使代碼難以閱讀和理解。
陣列或關聯陣列可能更合適。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/425672.html
