Linux下变量配置规则

Tips:
底下的例子当中,那个 var 与 str 为变量,我们想要针对 str 是否有配置来决定 var 的值喔! 一般来说, str: 代表『str 没配置或为空的字符串时』;至于 str 则仅为『没有该变量』。
鸟哥的图示

变量配置方式 str 没有配置 str 为空字符串 str 已配置非为空字符串
var=${str-expr} var=expr var= var=$str
var=${str:-expr} var=expr var=expr var=$str
var=${str+expr} var= var=expr var=expr
var=${str:+expr} var= var= var=expr
var=${str=expr} str=expr
var=expr
str 不变
var=
str 不变
var=$str
var=${str:=expr} str=expr
var=expr
str=expr
var=expr
str 不变
var=$str
var=${str?expr} expr 输出至 stderr var= var=$str
var=${str:?expr} expr 输出至 stderr expr 输出至 stderr var=$str

原文地址:https://www.cnblogs.com/aguai1992/p/4658967.html