【问题标题】:Bash scripting: Diference between "$(command)" and `command` [duplicate]Bash脚本:“$(command)”和`command`之间的区别[重复]
【发布时间】:2012-12-18 13:08:29
【问题描述】:

可能重复:
Command substitution: backticks or dollar sign / paren enclosed?

我想知道使用的区别

var="$(command)"

var=`command`

在 bash 脚本中,显然有两种方法可以获得相同的结果,但可能存在一些差异。

【问题讨论】:

  • 谢谢你,抱歉重复了,我不知道这太叫“替代”,忘了用类似的词看。再次感谢您...
  • 没问题。如果您以前没有看过它,很难通过搜索找到它。

标签: linux bash scripting sh


【解决方案1】:

来自bash man page

当使用旧式反引号形式的替换时,反斜杠保留其字面含义,除非后面跟着“$”、“`”或“\”。前面没有反斜杠的第一个反引号终止命令替换。使用 $(command) 形式时,括号之间的所有字符组成命令;没有人受到特殊对待。

(那里有更多有趣的东西;请阅读全文:))

【讨论】:

    【解决方案2】:

    第一个更好,因为您可以嵌套命令替换并且不会变得尴尬。

    Further Reading.

    【讨论】:

      猜你喜欢
      • 2023-03-30
      • 1970-01-01
      • 2019-12-20
      • 2018-09-25
      • 2013-07-31
      • 1970-01-01
      • 1970-01-01
      • 2014-06-26
      相关资源
      最近更新 更多