替换运算符
1、{:= }运算符
规则:1、若未定义该变量或者该变量值为空,则将用运算符后面的值赋值给该变量
2、变量值不为空,不更新变量值。
#! /bin/bash
PRINT="Remind some import things"
echo $PRINT
echo ${STRING1:=hello}
STRING1=string1
echo ${STRING1:=hello}
STRING1=
echo ${STRING1:=hello}
2、{:?}运算符
规则:1、若未定义该变量或者该变量值为空,退出程序并报错
2、变量值不为空,不更新变量值。
#! /bin/bash
PRINT="Remind some import things"
echo $PRINT
STRING2=string2
echo ${STRING2:?2}
echo ${STRING1:?}
3、{:+}运算符
规则:1、若未定义该变量或者该变量值为空,定义该变量但该变量值为空;
2、已定义该变量且变量值不为空,更新变量值。
#! /bin/bash
PRINT="Remind some import things"
echo $PRINT
STRING2=string2
echo ${STRING2:+2}
echo ${STRING1:+}
echo ${STRING1:+2}
4、{:-}运算符
规则:1、若未定义该变量或者该变量值为空,定义该变量且更新变量值;
2、已定义该变量且变量值不为空,不更新变量值。
#! /bin/bash
PRINT="Remind some import things"
echo $PRINT
STRING2=string2
echo ${STRING2:-2}
echo ${STRING1:-}
echo ${STRING1:-2}
Tips:运算符{:=}和{:-}功能一样。