关于Shell中命令替换$(...)与后置引用`...`的不同
2024-10-13 03:21:14
命令替换
在bash中,$( )
与` `
(反引号)都是用来作命令替换的。
命令替换与变量替换差不多,都是用来重组命令行的,先完成引号里的命令行,然后将其结果替换出来,再重组成新的命令行。
$( )与``
在操作上,这两者都是达到相应的效果,但是建议使用$( )
,理由如下:
- ``很容易与''搞混乱,尤其对初学者来说。
- 在多层次的复合替换中,``必须要额外的跳脱处理(反斜线),而$( )比较直观。
- 最后,$( )的弊端是,并不是所有的类unix系统都支持这种方式,但反引号是肯定支持的。
# 将cmd1执行结果作为cmd2参数,再将cmd2结果作为cmd3的参数 cmd3 $(cmd2 $(cmd1)) # 如果是用反引号,直接引用是不行的,还需要作跳脱处理 cmd3 `cmd2 \`cmd1\``
最新文章
- [AlwaysOn Availability Groups]监控AG性能
- ";编写高质量代码";一书笔记
- 在 MySQL 中查找含有目标字段的表
- Demo13
- Windows安装Python图像处理库:PIL模块
- sotower1.5-LS_工作流容易出错的地方
- C#泛型集合之Dictionary<;k, v>;使用技巧
- Swift中可能失败的构造器的传播(调用)和重写
- 权限管理之基于ACL的实现:自定义JSTL函数实现即时认证
- Java Web整合开发(78) -- Struts 1
- iOS应用的几个阶段
- 还原数据库“XXX”时失败。System.Data.SqlClient.SqlError: 无法执行 BACKUP LOG,因为当前没有数据库备份。
- 浅谈Unix I/O模型
- 解决eclipse maven工程中src/main/resources目录下创建的文件夹所显示样式不是文件夹,而是";包";图标样式的问题
- eclipse如何正确部署tomcat7
- ArcGIS API for JavaScript 4.9 &; 3.26 发布与新特性
- rust visual studio editoe &; debugger
- iOS拍照图片旋转的问题
- Java:自动设置环境变量(转载)
- POJ 2155 Matrix 【二维树状数组】(二维单点查询经典题)