shell中$( )与``的区别

命令行替换

1. 在bash中,$( )` `(反引号)都是用来作命令替换的。
  命令替换与变量替换差不多,都是用来重组命令行的,先完成引号里的命令行,然后将其结果替换出来,再重组成新的命令行。

[root@localhost scripts]# echo $(cat /etc/redhat-release)
CentOS Linux release 7.4.1708 (Core)
[root@localhost scripts]# echo `cat /etc/redhat-release`
CentOS Linux release 7.4.1708 (Core)
[root@localhost scripts]#

$( )与``
在操作上,这两者都是达到相应的效果,但是建议使用$( ),理由如下:

``很容易与''搞混乱,尤其对初学者来说,而$( )比较直观。
最后,$( )的弊端是,并不是所有的类unix系统都支持这种方式,但反引号是肯定支持的。

本文来源:Linux—shell中$(( ))、$( )、``与${ }的区别 - chengd - 博客园 (cnblogs.com)

 

上一篇:与*互联网公司技术大佬面对面聊聊RocketMQ


下一篇:‘conda‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。