雙引號和單引號之間的區別
| 雙引號 | 單引號 |
|---|---|
| 允許變數擴充套件 | 防止可變擴充套件 |
| 允許歷史記錄擴充套件 | 防止歷史擴張 |
| 允許命令替換 | 防止命令替換 |
*和 @ 可以有特殊的含義 |
*和 @ 總是文字 |
| 可以包含單引號或雙引號 | 單引號內不允許單引號 |
$,`,",\可以用\轉義,以防止它們的特殊含義 |
所有這些都是文字 |
兩者共有的屬性:
- 防止 globbing
- 防止分詞
例子:
$ echo "!cat"
echo "cat file"
cat file
$ echo '!cat'
!cat
echo "\"'\""
"'"
$ a='var'
$ echo '$a'
$a
$ echo "$a"
var