shell eval变量的值再次用来作为变量名解析其值

1.  name=yawu

2629 $ echo $name

yawu

2. 2630 $ yawu=vmd

2631 $ echo $name

yawu

2633 $ eval echo \$$name

vmd

3. 2657 $ eval echo "$""$name"

vmd

或者 eval echo '${'"$name"'}'  --》 vmd

4. 注意下面的错误:

2644 $ eval "$""echo $name"

bash: yawu: command not found

2636 $ eval $(echo $name)

bash: yawu: command not found

2649 $ eval '${'"$name"'}'   --》 这一点在把字符串作为命令执行挺好的!

bash: vmd: command not found

5. 上述形式均为bash shell直接运行,如若写在文件或alias中,需要注意形式。

你可能感兴趣的:(shell eval变量的值再次用来作为变量名解析其值)