首页 > 解决方案 > 从 bash 循环中的 V_${i}_T 变量名中提取指针

问题描述

假设我有几个变量名,比如

V_1_T = a
V_2_T = b
V_3_T = c
...

我想在 bash 循环中提取指针 a, b , c, ... 以连接这些值。我的明确愿望是重建一条分成几部分的消息,如gammu-smsd 文档中所述。我已经尝试过文档中的示例,但它不起作用。原因是代码从不指向变量的指针,而是指向变量本身,即我V_1_T充其量也不会a像我想的那样。

我也试过把

${V_${i}_T} ; ""$"V_${i}_T"

有和没有逗号的转义符号,......,但没有任何工作......

有任何想法吗 ?

我正在开发最新版本的 Raspbian + RaspberryPi。

标签: bashraspbiangammu

解决方案


使用间接参数展开:

for i in 1 2 3; do
  t="V_${i}_t"
  echo "${!t}"
done

这样可以避免使用eval您链接到的文档中显示的内容。


推荐阅读