Chinaunix首页 | 论坛 | 博客
  • 博客访问: 42290
  • 博文数量: 14
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 160
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-17 13:10
文章分类

全部博文(14)

文章存档

2015年(1)

2013年(13)

我的朋友

分类: LINUX

2015-01-28 13:02:43

eval 指令的官方的解释如下:
eval [arg ...]
              The args are read and concatenated together into a single command.  This command is then read and executed by the shell, and its exit status is returned as the  value  of eval.  If there are no args, or only null arguments, eval returns 0。

中文意思基本就是: eval 后面加一些指令和参数,eval会先把这些指令中的参数变量先处理一下,然后再执行指令。

举一些例子如下:
$? 是系统默认的一个环境变量,用于显示上一个指令执行的状态,0是正常,其他数字是失败。

echo $?
返回结果是0
但是我想将 $?作为一个变量,然后传递给命令呢,而且希望一步到位,我就可以用eval
eval echo \$$?
返回结果是 -bash
这个跟echo $0 是一样的,只是eval将\和变量$?处理过了并且直接转换成原来的值了。




阅读(1104) | 评论(0) | 转发(0) |
0

上一篇:VMware网络连接的几种方式Bridge NAT Host-only

下一篇:没有了

给主人留下些什么吧!~~