eval命令允许你对参数进行求值,他是shell的内置命令,通常不会以单独命令的形式存在。
例子:
foo = 100
x = foo
y ='$'$x
echo $y
它的输出是“$foo",而
foo = 10
x = foo
eval y = '$'$x
echo $y
输出10。因此,eval命令优点象一个额外的$,它给出一个变量的值的值。
eval命令十分有用,他允许代码被随时生成和运行,虽然它的确增加了脚本调试的复杂度,但它因为执行这个脚本的shell已经不存在了