语法:eval cmdLine
  eval会对后面的cmdLine进行两遍扫描,如果第一遍扫描后,cmdLine是个普通命令,则执行此命令;

  如果cmdLine中含有变量的间接引用,则保证间接引用的语义。

  举例如下:

  func 11 22 33 44

  如果要输出最后一个参数44,可以使用如下命令:

  echo $4

  但是如果我们不知道有几个参数的时候,要输出最后一个参数,大家可能会想到使用$#来输出最后一个参数,

  如果使用命令:

  echo "\$$#"

  则得到的结果是 $4,而不是我们想要的44。这里涉及到一个变量间接引用的问题,我们的本意是输出 $4,默认

情况下,命令后忽略变量间接引用的情况。

  这时候,就可以使用eval命令。

  eval echo "\$$#"

  得到的结果为44.

Reference:

shell中eval的使用问题 : http://doudouclever.blog.163.com/blog/static/175112310201252111104169/

最新文章

  1. GP 环境参数名称列表
  2. ASPxGridView中DetailRow的使用
  3. windows通过thrift访问hdfs
  4. android ListView内数据的动态添加与删除
  5. Highcharts Pie 饼图提示标签IE下重叠解决方法,及json数据绑定方法
  6. object C—类中函数的调用
  7. Windows Phone开发(42):缓动动画
  8. getline函数(精华版)
  9. Oracle使用游标删除所有用户数据表中的所有记录脚本
  10. PS教程:抠透明冰块
  11. Java并发编程75道面试题及答案
  12. c++中的const与指针
  13. webStrom访问只一个很简单的html文件的时候显示local host无法访问。。
  14. 第九节:详细讲解Java中的泛型,多线程,网络编程
  15. Feign快速入门
  16. Java NIO 与 IO之间的区别
  17. 关于在mac安装安卓的模拟器的一些些那点事情~~~
  18. POJ1035&&POJ3080&&POJ1936
  19. C# Language Specification 5.0 (翻译)第二章 词法结构
  20. Jquery消息提示插件toastr使用

热门文章

  1. SQL中使用视图的优点和缺点是什么
  2. hadoop入门博客链接
  3. pdfBox 读取pdf文件
  4. important——》sql server 2000安装图解
  5. IDEA15入门常用设置
  6. hdu5334(2015多校4)--Virtual Participation(构造)
  7. Apache thrift - 使用,内部实现及构建一个可扩展的RPC框架
  8. 第二十二篇:C++中的多态机制
  9. phantom的使用
  10. IntelliJ IDEA使用手册