码迷,mamicode.com
首页 > 其他好文 > 详细

对$()与``区别的理解

时间:2017-07-28 22:26:19      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:linux

本人Linux新手一枚,所以对$()和``的用法有点困惑,很多文章说这两是一样的

但测试下来还是有不同地方

个人认为$()逻辑层次比较清晰

``和$()在转义字符\的使用上有很大不一样

例如:

echo $(echo \\\\\\$SHELL)

结果会显示:\\\/bin/bash

但,echo `echo \\\\\\$SHELL`

结果会显示:\/bin/bash    

原因个人觉得:``里的一个\不能算转义字符,而是要两个成为一组时才能合并成一个转义字符来看待,

echo `echo \$SHELL`的结果和echo `echo $SHELL`一样,都是/bin/bash

这些通过

echo `echo \\\\\\\\$SHELL` 等同于4个转义字符,结果是\\/bin/bash,这个结果和echo $(echo \\\\$SHELL)是一样的,在$(),一个\等于一个转义字符

如有疏漏或错误,请各位大侠指出不足之处,谢谢


本文出自 “101010...010101” 博客,请务必保留此出处http://legendland.blog.51cto.com/2043145/1951783

对$()与``区别的理解

标签:linux

原文地址:http://legendland.blog.51cto.com/2043145/1951783

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!