${var:-world}
若var未定义,则表达式的值为world,var的值为null
若var已定义且为空,则表达是值为world, var的值为null
若var已定义且不为空,则表达式的值为var定义的值
${var:+world}
若var未定义,则表达式的值为null,var的值为null
若var已定义且为空,则表达是值为null,var的值为null
若var已定义且不为空,则表达式的值为world,var的值为定义值
${var:=world}
若var未定义,则表达式的值为world,var的值为world
若var已定义且为空,则表达是值为world, var的值为world
若var已定义且不为空,则表达式的值为var定义的值
${var:?world}
若var未定义或者未空,则表达式会报错
若var已定义且不为空,则表达式的值为var定义的值
${var:offset:len}
从var的第offset个位置开始,提取长度为len的子串。
${var/word1/word2}
将var中第一个匹配到的word1替换为word2
${var//word1/word2}
将var中所有word1替换为word2