范例
a=192.168.1.2-$a b='192.168.1.2-$a' c="192.168.1.2-$a" echo "a=$a" echo "b=$b" echo "c=${c}"
輸出結果
a=192.168.1.2-192.168.1.2 b=192.168.1.2-$a c=192.168.1.2-192.168.1.2-192.168.1.2
符號 | 特點 | 使用場景 |
'' | 輸出變量里有什么輸出什么 不會做相關解析 |
適用於定義純字符串, 不希望解析命令,變量的場景 |
"" | 輸出變量內容時, 引號里的變量會經過解析再輸出內容。 |
適用於命令里帶變量的情況 是最常見的情況 |
`` | name=`ls` name=${ls} 相當於$() |
二者等價,一般不用``。 一般用於引用命令, 執行的時候命令會被執行。 |
經驗小結:
-
變量的輸出方法如下:
- 使用 echo $name 的房嗎,也可以用 printf 做更復雜的輸出】
- 當變量后面有其他字符的時候一定要加上大括號。
- ${金庸}新著 和 $金庸新著 不一樣,不加{},shell解釋器會解釋錯誤