如何依次显示字符串?

清钟沁桐 2011-01-14 12:36:18
dsp0_annexFlat="dsp_c0_image image0"
dsp1_annexFlat="dsp_c1_image image1"
dsp2_annexFlat="dsp_c2_image image2"
dsp3_annexFlat="dsp_c3_image image3"
cpu1_annexFlat="cpu_c1_image image4"

group="dsp0 dsp1 dsp2 dsp3 cpu1"
for i in $group
do
echo $'${i}_annexFlat'
echo ${dsp3_annexFlat}
echo ${${i}_annexFlat}
done

以上代码执行时出错
${i}_annexFlat
dsp_c3_image image3
./hcc: line 20: ${${i}_annexFlat}: bad substitution
我想显示以下内容该怎么在for循环中操作呢?
"dsp_c1_image image1"
"dsp_c2_image image2"
"dsp_c3_image image"
"cpu_c1_image image4"
...全文
110 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
清钟沁桐 2011-02-09
  • 打赏
  • 举报
回复
恩,eval 是关键!
看着奢扣 2011-01-14
  • 打赏
  • 举报
回复
#!/bin/bash
dsp0_annexFlat="dsp_c0_image image0"
dsp1_annexFlat="dsp_c1_image image1"
dsp2_annexFlat="dsp_c2_image image2"
dsp3_annexFlat="dsp_c3_image image3"
cpu1_annexFlat="cpu_c1_image image4"

group="dsp0 dsp1 dsp2 dsp3 cpu1"
j="_annexFlat"
for i in $group
do
b=$i$j
eval echo \$$b
done
iambic 2011-01-14
  • 打赏
  • 举报
回复
group="dsp0 dsp1 dsp2 dsp3 cpu1"
for i in $group
do
eval echo '$'${i}_annexFlat
done


37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧