[shell 脚本]eval命令和命令代换 ` `和 $()
来源:互联网 发布:淘宝卖家怎么改名 编辑:程序博客网 时间:2024/06/06 13:18
作用
$(cmd)和`cmd`的作用相同,在执行一条命令时,会将其中的``或者是$()中的语句命令执行一遍,再将结果加入到原命令。echo `pwd`echo $(pwd)shell 执行该命令行,先执行命令pwd,将输出结果替代`pwd`,最后输出替换后的结果。
eg:
两者对比
- 相对而言,$()用起来较简洁点,倒引号较容易混淆。
- 多层次的替换中,倒引号需要/
处理,需要这样写
cmd/`cmd/“,写起来麻烦,看起来也不那么简洁。用(), (cmd$(cmd))相对简单点。 倒引号基本在shell中使用,移植性较高,$()不是。
eval
用法:eval cmdline
原理:eval 主要用在对参数的特殊处理上,一般的命令行,shell对参数只执行一遍。eval会对后面的cmdline进行两边扫描,如果第一遍扫描,cmdline只是个普通命令,就直接执行命令。若cmdline的变量又间接引用,则扫描第二遍,执行间接引用的语义。
当直接用echo $cmd
时,只进行一次扫描,所以时echo hello wrold。当eval $cmd
时,cmd里有间接引用,进行二次扫描,所以时hello world
阅读全文
1 0
- [shell 脚本]eval命令和命令代换 ` `和 $()
- 【Linux】shell脚本下的命令代换` `和$() 以及eval
- Linux【Shell脚本】—eval命令和命令代换(`和$())
- 【shell脚本】命令代换 ` `, $( ) ,整数运算$(( )),变量代换${ },eval命令
- 命令代换‘’和$()和eval命令
- 命令代换``和$()区别,eval命令
- 【shell脚本】eval命令详解及命令代换
- shell脚本命令代换
- shell脚本中命令代换:反引号、$()、eval区别
- shell脚本命令代换之‘ ’(反单引号)和$()
- shell命令代换与eval命令
- 命令代换``和$()的学习以及eval命令的了解
- Shell脚本中命令代换
- shell脚本中的命令代换
- SHELL脚本的命令代换
- shell脚本之命令代换
- shell脚本的命令代换
- shell脚本 符号 `` 和$()的对比 及eval命令
- 821B
- 人月神话
- 搭建selenium + python环境
- No mapping found for HTTP request with URI
- JSON与XML的区别比较
- [shell 脚本]eval命令和命令代换 ` `和 $()
- Android 防止webview 注入
- 百练 分解因数(递归)
- 配置阿里云并编译ffmpeg_android
- JavaScript提高效率之编程实践
- 人工神经元模型及常见激活函数
- 局部敏感哈希(Locality-Sensitive Hashing, LSH)方法介绍
- pipe管道
- PPTP VPN