给一个变量赋 null value 跟用 unset 取消此变量的值,虽然在用 echo 命令时输出的是一样,如下:
A=
echo $A
unset A
echo $A
虽然上面运行显示结果十一样的,但赋 null value 与 unset 变量在一些进阶的变量处理上很是严格,如下:
str=
var=${str=expr}
echo $var
echo $str
unset str
var=${str=expr}
echo $var
expr
echo $str
expr
可以看出结果还是很不同的。
这里,var=${str=expr} 表达式的意思如下:
变量的设定方式 str 没有设置 str 已经设置不管是不是空字符串
var=${str=expr} str=expr str 不变
var=expr var=$str
更详细内容请参考如下链接: