linux - 一部分可变的变量

标签 linux bash variables dynamic

我的变量看起来像这样:

$INFOMonday
$INFOTuesday

可以这么说,在我的 Bash 脚本中,我想使用 Todays 变量的值。我用以下方法提取了这一天:

dayofweek=$(date --date=${dateinfile#?_} "+%A")

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

echo $INFO$dayofweek

有什么方法可以添加变量作为变量名称的一部分吗?例如,如果是星期一,则 echo 将返回 $INFOMonday 的值。

最佳答案

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

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

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

较新的方法是使用 associative array .

关于linux - 一部分可变的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19062092/

相关文章:

python - 使用循环为列表中的变量赋值

php - 在 Woocommerce 中创建指向外部路由的链接

C 调用 semget 返回错误 "semget: No such file or directory"

linux - 统计linux中数字的出现次数

bash - 代理 stdout/stderr 在 bash 中保持顺序

linux - 将字符串附加到第二列中所有 CSV 字段末尾的 Shell 脚本

linux - 监视日志大小事件

c++ - stdout 到变量 c/c++

linux - 逐 block 处理日志,每个 block 包含多行

java - 使用随机字符串创建变量 - 屏幕上不会打印任何内容