变量,其中一个部分是可变的

时间:2013-09-28 00:51:14

标签: linux bash variables dynamic

我的变量看起来像这样:

$INFOMonday
$INFOTuesday

在我的Bash脚本中,我想使用todays变量的值,所以说。我用:

提取了这一天
dayofweek=$(date --date=${dateinfile#?_} "+%A")

我需要帮助的是,正在执行以下操作:

echo $INFO$dayofweek

有没有办法在变量名称中添加变量?例如,如果它是星期一,那么echo将返回$ INFOMonday的值。

1 个答案:

答案 0 :(得分:2)

执行此操作的旧式方法是使用间接运算符${!variable}

dayofweek=$(date...)
var=INFO$dayofweek
echo ${!var}

请注意,在${!var}中,var必须是变量名,而不是字符串表达式或其他类型的替换。它有点笨重。

更新的方法是使用associative array