免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1977 | 回复: 1
打印 上一主题 下一主题

shell中的变量能嵌套使用吗? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-04-24 21:55 |只看该作者 |倒序浏览
现有个问题,想把脚本的所有位置变量的值隔行打出,而不是用$*,用以下代码,输出结果是:
arg1: $1
arg2: $2
arg3: $3
无法输出位置变量$1,$2,$3的值,请问shell中能否嵌套变量,应如何处理?代码如下:

  1. #!/bin/sh
  2. # ifparam
  3. # 打印出所有的位置变量值
  4. x=1
  5. while [ $x -le $# ]
  6. do  
  7.    echo  "arg$x: $"$x""
  8.    x=`expr $x + 1`
  9. done
复制代码

论坛徽章:
0
2 [报告]
发表于 2003-04-24 22:50 |只看该作者

shell中的变量能嵌套使用吗?

解决了。应用eval str="$"$x;echo arg$x: $str

  1. #!/bin/sh
  2. # ifparam
  3. # 打印出所有的位置变量值
  4. x=1
  5. while [ $x -le $# ]
  6. do  
  7.    eval str="$"$x;echo arg$x: $str
  8.    x=`expr $x + 1`
  9. done
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP