命令代換:先完成引號裏或者括號裏的命令行,然後將其結果替換出來,再重組成新的命令行。
Shell中可以用來實現變量代換的命令有兩種,一種是由反引號括起來的一條命令另一種是由$()括起來一條命令,shell先執行這條命令,然後見輸出結果立刻代換到當前命令行中。
如:
DATE='helloword'
echo $DATE
輸出如下:
DATE=$(date)
echo $DATE
輸出如下:
二者之間的區別:
echo 'echo'\\''
輸出如下:
echo $(echo'\\')
輸出如下:
原因如下:
1.反引號本身就對\進行了轉移,保留了其本身的意思,如果我們想在反引號中起到\的特殊意義的話,我們必須用兩個反斜槓來進行表示。
2.$()中不需要考慮\的問題,與我們平常使用的\一樣