shell script筆記_單引號、雙引號、反引號

問:爲什麼要用引號?
答:變量值出現空格時,比如 name=xiao ming 這樣執行就會出現問題,而必須用引號括起來,比如 name=“xiao ming”。

反引號
` 是反引號是在ESC鍵下面的,反引號代表引用linux的命令。爲了防止混淆或 POSIX 規範的角度來說,儘量使用 $(命令) 的方式來引用linux命令的輸出,而不要使用反引號。

下面2行輸出結果是一樣的
echo $(date)
echo `date`
下面2行輸出結果是一樣的
echo $(expr 1 + 1)
echo `expr 1 + 1`

單引號
被單引號括起來的字符都是普通字符,就算特殊字符也不再有特殊含義;

雙引號
被雙引號括起來的字符中,$、\、反引號 有特殊含義。
$代表引用變量值,\代表轉義字符,反引號代表引用linux的命令。

其實在shell中 echo的參數-e能夠解析轉義字符,在單引或者雙引的情況下都能夠解析。
-e 啓用下列反斜槓轉義的解釋

echo 'a\nb'    #結果是a\nb

echo -e 'a\nb'   
運行結果是: 
a
b
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章