如题,有点绕,其实就是:
有一个变量A,A中存储的内容是另一个变量的名字,我想得到这“另一个变量”的值,怎么通过A来得到?
欢迎大家发言~
请教:如何读取以变量值为名的变量的值
- narutozhang
- 帖子: 65
- 注册时间: 2007-01-08 22:18
- 来自: 中国
- 联系:
请教:如何读取以变量值为名的变量的值
踏踏实实做事,老老实实做人,开开心心生活~
-
- 帖子: 3681
- 注册时间: 2008-05-03 23:42
Re: 请教:如何读取以变量值为名的变量的值
代码: 全选
ubuntu@ubuntu:~$ a=b
ubuntu@ubuntu:~$ b='it works!'
ubuntu@ubuntu:~$ echo $a
b
ubuntu@ubuntu:~$ echo $b
it works!
ubuntu@ubuntu:~$ eval echo \$$a
it works!
ubuntu@ubuntu:~$ eval c=\$$a
ubuntu@ubuntu:~$ echo $c
it works!
ubuntu@ubuntu:~$
- narutozhang
- 帖子: 65
- 注册时间: 2007-01-08 22:18
- 来自: 中国
- 联系:
- cnkilior
- 论坛版主
- 帖子: 4984
- 注册时间: 2007-08-05 17:40
Re: 请教:如何读取以变量值为名的变量的值
代码: 全选
a=b
b=c
echo ${!a}
- narutozhang
- 帖子: 65
- 注册时间: 2007-01-08 22:18
- 来自: 中国
- 联系:
Re: 请教:如何读取以变量值为名的变量的值
可不可以介绍一下'!'的功能?谢谢.cnkilior 写了:c代码: 全选
a=b b=c echo ${!a}
踏踏实实做事,老老实实做人,开开心心生活~
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
-
- 帖子: 3681
- 注册时间: 2008-05-03 23:42
Re: 请教:如何读取以变量值为名的变量的值
可以在 http://ftp.ubuntu.org.cn/doc/ebooks/%e8 ... -guide.pdf 这本书里面搜 indirect variable reference (referencing)
4 楼的方法是 bash version 2 的新语法,在不同的 shell 里可能不能用。
在 bash 下,
echo $BASH_VERSION
如果是版本 2 或 3 就可以
如果在 ubuntu 里,记住用 #!/bin/bash ,而 #!/bin/sh 会出错。
4 楼的方法是 bash version 2 的新语法,在不同的 shell 里可能不能用。
在 bash 下,
echo $BASH_VERSION
如果是版本 2 或 3 就可以
如果在 ubuntu 里,记住用 #!/bin/bash ,而 #!/bin/sh 会出错。
- narutozhang
- 帖子: 65
- 注册时间: 2007-01-08 22:18
- 来自: 中国
- 联系:
Re: 请教:如何读取以变量值为名的变量的值
eval is useful when cmd contains something which needs to be evaluated by the shell. The typical case would be when you have a variable containing the index of an argument you want to access.eexpress 写了:这bt的,没用过。估计lz是需要数组来操作什么,却思路不对。
我就是跟上面说的一样要操作参数。
踏踏实实做事,老老实实做人,开开心心生活~