1. linux中三種引號的作用有什麼區別
Linux的三中引號:雙引號 " " ,單引號 ' ', 還有就是反引號 ` `
單引號和雙引號的作用是差不多的,在裡面的結果都是字元串,比如
a="date" ,b='date' 這兩個是一樣的。
反引號的作用就不一樣了,反引號是把裡面的當作一個命令來執行,比如
c=`date`
當 echo $a $b $c的時候 結果就分別是
date date 2014-11-1 20:33
2. 關於linux中的倒引號的嵌套使用
當倒引號嵌套使用時:
abc=`echo abc is`pwd``
你以為系統會把`pwd`運算出來作為`echo abc is...`的一部分嗎?
當然不是!
系統會把`echo abc is`作為一個命令運算出來,
再加上字元串pwd,
再加上空命令``
也就是說:
系統並不會把這種寫法理解為嵌套,
而是會"就近匹配"倒引號,
要想達到嵌套的效果,裡面的倒引號必須使用轉義\
3. Linux里單引號和雙引號的區別
shell腳本中的單引號和雙引號一樣都是字元串的界定符,而不是字元的界定符。單引號用於保持引號內所有字元的字面值,即使引號內的\和回車也不例外,但是字元串中不能出現單引號。(注意是所有,只是單引號本身不能夠出現在其中)。
雙引號用於保持引號內所有字元的字面值(回車也不例外),但以下情況除外:
$加變數名可以取變數的值
反引號仍表示命令替換
\$表示$的字面值
\`表示`的字面值
\"表示"的字面值
\\表示\的字面值
除以上情況之外,在其它字元前面的\無特殊含義,只表示字面值。
從上就可以看出單引號和雙引號的區別。下面舉幾個例子:
可見,單引號中完全是保持字元串的原型輸出,而雙引號進行了命令替換。
由上可見雖然單引號和雙引號都是字元串的限定符,但還是有所區別。
4. liunx的ls怎麼在文件名上加引號啊意思是將a文件夾下的兩個文件bbb'ccc生成"bbb",
使用-Q參數
-Q或--quote-name 把文件和目錄名稱以""號標示起來。
如下:
Ray@Linux-Ray:/home/Ray> ls ./shellscript/
colourword.sh ipaddress.sh ipjudge.sh math100.sh mathinput.sh
Ray@linux-Ray:/home/Ray> ls -Q ./shellscript/
"colourword.sh" "ipaddress.sh" "ipjudge.sh" "math100.sh" "mathinput.sh"
5. 描述Linux shell中單引號、雙引號及不加引號的簡單區別
單引號:所見即所得,即將單引號內的內容原樣輸出,或者描述為單引號裡面看到的是什麼就輸出什麼。
雙引號:把雙引號裡面的內容給輸出出來,如果內容中有命令、變數等,會先把,變來那個、命令解析出結果,然後輸出最終內容。
雙引號內的命令或者變數寫法』命令或變數』或$(命令或變數)
無引號:把內容輸出出來,可能不會鍵含有空格的字元串,視為一個整體輸出,如果內容中有命令、變數等,會先把變數、命令解析出來,然後輸出最終內容,如果字元串中帶有空格等特殊字元,則不能完整輸出,需要改加雙引號。一般連續的字元串,數字,路徑等可以用,不過最好用雙引號,替代之。
如果有什麼不懂的話可以去看看《Linux就該這么學》這本書,非常適合新手學習Linux。