a=${b-c} #当b为unset的时候, echo $a 结果为c #当b为空变量的时候, echo $a 结果为空 echo $b 结果为空 #当b为not null的时候, echo $a 结果与b的结果相同 a=${b:-c} #当b为unset的时候 echo $a 结果为c #当b为空变量的时候 echo $a 结果为c echo $b 结果为空 #当b为not null的时候 echo $a 结果与b的结果相同 a=${b+c} #当b为unset的时候 echo $a 结果为空 #当b为空变量的时候 echo $a 结果为c echo $b 结果为空 #当b为not null的时候 echo $a 结果为c a=${b:+c} #当b为unset的时候 echo $a 结果为空 #当b为空变量的时候 echo $a 结果为空 echo $b 结果为空 #当b为not null的时候 echo $a 结果为c a=${b?c} #当b为unset的时候 -bash: b:c #当b为空变量的时候 echo $a 结果为空 echo $b 结果为空 #当b为not null的时候 echo $a 结果与b的结果相同 a=${b:?c} #当b为unset的时候 -bash: b:c #当b为空变量的时候 -bash: b:c -bash: b:c #当b为not null的时候 echo $a 结果与b的结果相同 a=${b=c} #当b为unset的时候, echo $a 结果为c #当b为空变量的时候, echo $a 结果为空 echo $b 结果为空 #当b为not null的时候, echo $a 结果与b的结果相同 a=${b:=c} #当b为unset的时候 echo $a 结果为c #当b为空变量的时候 echo $a 结果为c echo $b 结果为c #当b为not null的时候 echo $a 结果与b的结果相同