如何在参数中访问变量的内容?

时间:2012-04-04 11:12:45

标签: bash shell variables arguments command-line-arguments

如何访问作为bash-script的argement传递的变量的内容?

示例:sh myscript.sh PATH。现在我想修改PATH内的字符串,但是仍然无法访问它!

有什么想法吗?

编辑:我需要能够访问任何变量,而不仅仅是PATH

2 个答案:

答案 0 :(得分:2)

这样的事情对你有用:

#!/bin/bash

ARG=$1
VAL=${!ARG}
echo $VAL

如果你像这样执行你的脚本:

./myscript.sh PATH

它在STDOUT上打印$PATH值。

答案 1 :(得分:0)

#!/bin/bash
FOO=$(eval echo \$$1)
echo args: $FOO

给出:

$ foo.sh HOME
args: /home/bos