shell腳本命令代換之‘ ’(反單引號)和$()

命令代換:先完成引號裏或者括號裏的命令行,然後將其結果替換出來,再重組成新的命令行。
Shell中可以用來實現變量代換的命令有兩種,一種是由反引號括起來的一條命令另一種是由$()括起來一條命令,shell先執行這條命令,然後見輸出結果立刻代換到當前命令行中。
如:

DATE='helloword'
echo $DATE

輸出如下:
這裏寫圖片描述

DATE=$(date)
echo $DATE

輸出如下:
這裏寫圖片描述

二者之間的區別:

echo 'echo'\\''

輸出如下:
這裏寫圖片描述

echo $(echo'\\')

輸出如下:
這裏寫圖片描述
原因如下:
1.反引號本身就對\進行了轉移,保留了其本身的意思,如果我們想在反引號中起到\的特殊意義的話,我們必須用兩個反斜槓來進行表示。
2.$()中不需要考慮\的問題,與我們平常使用的\一樣

發佈了79 篇原創文章 · 獲贊 18 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章