`和$(在Bash中有什么区别?

时间:2015-12-14 18:41:23

标签: bash

之间有什么区别
failed_instance=`aws deploy`

failed_instance=$(aws deploy)

我在谈论`和$(?

1 个答案:

答案 0 :(得分:5)

两者在语义上都是相同的,并且两者都是由POSIX sh标准强制执行的,但$()是更新的现代语法。

  • 反斜杠处理与$()内的通常相同,但反斜杠需要在反引号中转义(很多转义,如果嵌套)。
  • 它整洁地嵌套。比较

    printf '%s\n' "$(foo "$(bar)")"     # new POSIX sh syntax
    

    它的老式等价物......

    printf '%s\n' "`foo \"\`bar\`\"`"   # legacy Bourne syntax