我将一个字符串作为参数传递给shell脚本。并且shell脚本应该告诉我传递的参数是否是变量
类似这样的事情
if [ ! -z ${$1} ] ; then
echo yes! $1 is a variable and its value is ${$1}
fi
但这给了我糟糕的替代错误..
我当然知道我错过了什么......帮助我!
例如用法:
$ myscript.sh HOME
yes! HOME is a variable and its value is /home/raj
答案 0 :(得分:4)
这个的语法是:
${!VAR}
示例:
$ function hello() { echo ${!1}; }
$ hello HOME
/home/me
答案 1 :(得分:1)
你应该做的一切:
if [ ! -z ${!1} ]; then
echo yes $1 is a variable and its value is ${!1}
fi