替换运算符
${varname:-word} 变量存在,则返回varname;不存在则返回word
${varname:=word} 存在,返回;不存在,置为word,并返回
${varname:?message} 不存在,返回消息
${varname:+word} 存在,返回word;不存在,返回null
模式匹配运算符
${varname # pattern} 匹配开头,删除匹配最短部分,返回剩余
path=/home/prince/desktop/long.file.name
${path#/*/}
prince/desktop/long.file.name
${varname ## pattern} 匹配开头,删除匹配最长部分,返回剩余
${varname % pattern} 匹配结尾,删除匹配最短部分,返回剩余
${varname %% pattern} 匹配结尾,删除匹配最长部分,返回剩余
${varname /pattern/string} 只替换第一个匹配项
${varname //pattern/string} 变量中pattern换为string