Chinaunix首页 | 论坛 | 博客
  • 博客访问: 36406
  • 博文数量: 7
  • 博客积分: 168
  • 博客等级: 入伍新兵
  • 技术积分: 75
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-06 15:48
文章分类
文章存档

2011年(7)

分类:

2011-09-05 08:31:44

原文地址:shell中变量的变量 作者:shinyguo_s

by shinyguo.s@gmail.com
假如有这样的一个代码:
  1. #!/bin/sh

  2. for item in cpu mem java http
  3. do
  4.      eval ${item}_x=0.1
  5.      eval ${item}_y=0.2
  6. done
如何得到${item}_x, ${item}_y的“值”?
最笨的方法是:
  1. #!/bin/sh

  2. echo $cpu_x
  3. echo $cpu_y
  4. echo $mem_x
  5. echo $mem_y
  6. echo $java_x
  7. echo $java_y
  8. ...
但是如果item有很多很多呢?可不可以在for循环中直接打印出来?
这时,就用到了变量($item)的变量, 变量值的变量值,如下即可:
  1. #!/bin/bash

  2. for item in cpu mem java http
  3. do
  4.       eval echo \${${item}_x}
  5.       eval echo \${${item}_y}
  6. done

阅读(1194) | 评论(0) | 转发(0) |
0

上一篇:linux sleep 用法

下一篇:linux sed命令详解

给主人留下些什么吧!~~