首页 > 代码库 > Linux里的eval命令
Linux里的eval命令
这个命令之前没有用过,在网上查了一下资料,觉得人家写的很好,所以复制过来了。
标题:linux命令eval的用法
链接:http://blog.chinaunix.net/uid-21411227-id-1826706.html
标题:linux shell中的eval
链接:http://www.2cto.com/os/201311/255577.html
语法:eval cmdLine
eval会对后面的cmdLine进行两遍扫描,如果在第一遍扫面后cmdLine是一个普通命令,则执行此命令;如果cmdLine中含有变量的间接引用,则保证简介引用的语义。
举例如下:
set 11 22 33 44
如果要输出最近一个参数,即44,可以使用如下命令,
echo $4
但是如果我们不知道是几个参数的时候,要输出最后一个参数,大家可能会想到使用$#来输出最后一个参数,
如果使用命令:
echo "\$$#"
则得到的结果是$4,而不是我们想要的44.这里涉及到一个变量简介引用的问题,我们的本意是输出$4,默认情况下,命令后忽略变量简介引用的情况。
这时候,就可以使用eval命令。
eval echo "\$$#"
得到结果为44.
Linux里的eval命令
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。