eval回显变量

eval命令将会首先扫描命令行进行所有的置换,然后再执行该命令。该命令适用于那些一次扫描无法实现其功能的变量。

一个应用场景如下:

export path="/home/bin/"

a="\$path/file1"

echo $a

会显示: $path/file1

我们实际想得到的结果是:/home/bin/file1

解决:

a=$(eval echo $a)

有人会说,谁那么蛋疼给a赋值的时候还搞个转义符在前面?实际当然没人那么蛋疼,可是有时a不是你自己赋值的,是别人给你的,那时候你没办法控制,这个就派上用场了。我遇到的场景是用xml_grep获取到的串是带转义符的,搞了半天才找到这个解决方法。

上一篇:Opencl API解释(二)


下一篇:uva 10900