Linux之eval
来源:互联网 发布:数据字典模型作用 编辑:程序博客网 时间:2024/06/05 18:24
eval :命令替换
编写以下脚本,实现统计当前目录中文件个数。
结果如下:
报错了。这时因为没有解释出pipe变量的内容,所以会报错。
加上eval后
结果为:
达到预期效果。eval进行两次扫描,第一次扫描,将pipe变量替换为 | ,第二次扫描再执行命令行命令,这时,shell会识别 | 为管道符号,所以命令成功运行。
但是同是命令替换,反引号`和$()却没有这种效果。他们只是会将pipe替换 | ,但是shell却无法识别此时的 | 。所以结果会报错。
再举个例子说明。
有一个files文件内容为hello file
编写一个shell脚本,先用一个变量接收file的内容,再将该变量的内容显示出来。
没用eval时
结果为
没有解析cat命令。
换成eval
结果为:
总结:eval 可以替换间接的命令,并使shell识别。
反引号和$()只能替换简单命令。
ps:反引号与$()的区别
阅读全文
0 0
- linux之eval用法
- linux 命令之eval
- linux命令之eval
- linux命令之eval
- linux 命令之eval
- linux shell之eval
- Linux之eval
- linux命令之eval
- linux命令学习之eval
- Linux shell之eval、``与$()
- 图解Linux命令之--eval命令
- linux脚本语言之shell 中的eval
- linux eval
- linux eval
- linux eval
- Linux eval
- LINUX EVAL命令
- LINUX EVAL命令
- python复习:列表、元组、列表操作、字典
- selenium---unittest框架测试用例函数执行顺序 优先级
- Redis-Service.Stack.Redis对Redis基本数据类型String,List,Hash,Set,ZSet的操作
- JSTL语言整合JS脚本(JSTL控制JS脚本;JSTL控制在页面中的JS脚本语句)
- [spark论文翻译] RDD:基于内存的集群计算容错抽象
- Linux之eval
- ActiveMQ简单使用(二):整合Spring
- MP4的几个概念——神文,看懂这篇就够了
- 关于莫名其妙的400和500错误
- 6.2-全栈Java笔记:异常处理机制的分类
- iOS自动化测试之smallapple 使用翻译
- 使用CA自签名证书搭建HTTPS网站
- 使用config.gradle统一管理项目的依赖库
- ios端ijkplayer编译