变量测试
y设置空值
y=""
echo ${y-2} # 空
echo ${y:-2} # 2
echo ${y+2} # 2
echo ${y:+2} # 空
x=${y=2}
echo $x # 空
echo $y # 空
x=${y:=2}
echo $x # 2
echo $y # 2
y="" #重新为空
x=${y?2}
echo $x # 空
echo $y # 空
x=${y:?2} # 报错
y1没有设置
#y1没有设置
x=${y1-2}
echo $x # 2
echo ${y1:-2} # 2
echo ${y1+2} # 空
echo ${y1:+2} # 空
x=${y1=2}
echo $x # 2
echo $y1 # 2
x=${y2:=2}
echo $x # 2
echo $y2 # 2
x=${y3?2} # 报错
x=${y3:?2} # 报错
y有值
自行尝试
如何变量没有设置值或变量为空时,对变量赋值
可以少做一次判断:
x=${y:=2}