**:
目的: 為了保護文字不被轉換.除了他本身. 就是說除去單引號外, 在單引號內的所有文字都是原樣輸出.
1. [root@jszwl161 sp49ep9]# echo '$*>
$*>
she is crying: "help"
3. [root@jszwl161 sp49ep9]# echo '\\\\'
\\\\
4. [root@jszwl161 sp49ep9]# echo 'hah 'test''
hah test
#略去了所有'
5. [root@jszwl161 sp49ep9]# echo ' today is `date`'
today is `date`
#反引號在此無法實現函式功能.
目的: 為了包含文字或者函式段. 除了本身,反引號內的函式,$開頭的變數和\開頭反轉換的字元外, 其餘都是直接輸出.
1. [root@jszwl161 sp49ep9]# echo "today is `date`"
today is fri jul
4 08:03:34 gmt 2008
2. [root@jszwl161 sp49ep9]# echo "today is 'date'"
today is 'date'
3. [root@jszwl161 sp49ep9]# echo "\\\\"
\\4. [root@jszwl161 sp49ep9]# echo "test "test""
test test
目的是為了在雙引號內保持函式轉換. 但單引號內其無作用.
1. [root@jszwl161 sp49ep9]# echo "today is `date`"
today is fri jul
4 08:03:34 gmt 2008
#將函式date轉換.
2. [root@jszwl161 sp49ep9]# echo ' today is `date` '
today is `date`
#在單引號內無作用.
被單引號用括住的內容,將被視為單一字串。在引號內的代表變數的$符號,沒有作用,也就是說,他被視為一般符號處理,防止任何變數替換。
被雙引號用括住的內容,將被視為單一字串。它防止萬用字元擴充套件,但允許變數擴充套件。這點與單引數的處理方式不同。
在前面的單雙引號,括住的是字串,但如果該字串是一列命令列,會怎樣?答案是不會執行。要處理這種情況,我們得用反單引號來做。
fdv=`date +%f`echo "today $fdv"
在倒引號內的 date +%f 會被視為指令,執行的結果會帶入 fdv 變數中。
Linux 反引號 單引號 雙引號簡析
1 將多個因為空格或者回車等分隔符隔開的字串合在一起,避免被命令列解析分開 例如 a b c 是乙個字串,而不會像 a b c 這樣會被解析成三個單獨的字串。2 讓一些特殊符號保持原義。反引號 這個字元所對應的鍵一般位於鍵盤的左上角,和單引號 是有區別的。反引號括起來的字串會被 shell 解釋為命...
linux 單引號 雙引號 反引號的區別。
一 單引號和雙引號 單引號和雙引號,都是為了解決中間有空格的問題。因為空格在linux中時作為乙個很典型的分隔符,比如string1 this is astring,這樣執行就會報錯。為了避免這個問題,因此就產生了單引號和雙引號。他們的區別在於,單 引號將剝奪其中的所有字元的特殊含義,而雙引號中的 ...
Shell單引號,雙引號,反引號,反斜槓
shell單引號,雙引號,反引號,反斜槓 shell可以識別4種不同型別的引字符號 單引號字元 雙引號字元 反斜槓字元 反引號字元 1.單引號 grep susan phonebook susan goldberg 403 212 4921 susan topple 212 234 2343 如果我...