2015-12-14 274 views
1

什麼

failed_instance=`aws deploy` 

failed_instance=$(aws deploy) 

我說的`和$(?

回答

5

兩者都是的區別語義相同,並且兩者都由POSIX sh標準強制執行,但$()是較新的現代語法。

  • 反斜槓處理與$()內部一樣,但反斜槓需要轉義(批次在嵌套時轉義)。
  • 它整潔地嵌套。比較

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

    其舊式相當於...

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

你的答案是優秀的,一如既往;然而,如果你標記明顯的重複而不是回答它們會更好。提前致謝。 – tripleee

+0

直到回答完之後才記得另一個例子,當我到達那裏時,基思已經打敗了我。 –

+0

我從來沒有找到任何不在標籤wiki上的答案。我在那裏添加了這個。 –