linux shell中eval工具的作用
2012-11-02 14:05
190 查看
在shell 脚本中经常能见到 eval 工具的使用,先前总是不能对其真正的理解,最近查看了一些资料,并做了几个测试的例子,现在终于搞清楚它的意思了。
它相当于 c 语言中的宏定义,当在一个赋值语句的前面加上 eval 时,它就会将后面表达式中以$ 开头的所有变量进行整体替换。
例如:
var1="abcd"
tmp=var
eval test="$"$var"1"
echo $test
那么就会在屏幕上显示出 :
abcd
语法:eval cmdLine
eval会对后面cmdLine进行两边扫描,如果第一遍扫描后cmdLine是一个普通命令,则执行此命令;
如果cmdLine中含有变量的间接引用,则保证间接引用的语义。
它相当于 c 语言中的宏定义,当在一个赋值语句的前面加上 eval 时,它就会将后面表达式中以$ 开头的所有变量进行整体替换。
例如:
var1="abcd"
tmp=var
eval test="$"$var"1"
echo $test
那么就会在屏幕上显示出 :
abcd
语法:eval cmdLine
eval会对后面cmdLine进行两边扫描,如果第一遍扫描后cmdLine是一个普通命令,则执行此命令;
如果cmdLine中含有变量的间接引用,则保证间接引用的语义。
相关文章推荐
- Linux Shell中 eval语法调研
- Ant工具 ant的安装与配置 ant作用
- 第二部分 Linux Shell高级编程技巧——第二章 Shell工具
- 调试工具按钮的作用
- [全程建模]UML工具的反工和代码类图时序图的作用
- 让eval()全局作用域执行的方法深入研究(javascript)
- 自学Linux Shell9.2-基于Red Hat系统工具包存在两种方式之一:RPM包
- Java keytool工具的作用及使用方法
- linux shell工具集合
- linux shell eval命令
- 开源视频质量评价工具: Evalvid
- suse中包管理工具与zypper命令的作用
- Linux shell实战(ipcs工具)
- python自然语言处理工具NLTK各个包的意思和作用总结
- Ant工具 ant的安装与配置 ant作用
- 统计分析工具的作用
- asp.net Eval中的用法及作用
- Linux Shell脚本攻略:shell中各种括号()、(())、[]、[[]]、{}的作用
- linux shell工具集合
- Eval的作用