范例
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解释器会解释错误