变量基础用法:
${变量} #返回变量值
${#变量} #返回变量长度,字符长度
${变量:a} #返回变量 a数值之后的字符
${变量:a:b} #返回变量 a数值之后长度为b的字符
${变量#word} #从变量开头删除最短匹配的word字符串
${变量##word} #从变量开头删除最长匹配的word字符串
${变量%word} #从变量结尾删除最短匹配的word字符串
${变量%%word} #从变量结尾删除最长匹配的word字符串
${变量/a/s} #用s替换第一个匹配到的a字符串
${变量//a/s} #用s替换所有匹配到的a字符串
扩展变量用法:
${变量:-word} #如果变量值为空,则返回word字符串
${变量:+word} #如果变量值为空什么都不做,否则返回word字符串
${变量:=word} #如果变量值为空,把word赋值给变量并返回word字符串
${变量:?word} #如果变量值为空,则word当作stderr值输出,否则输出变量,用于设置因为变量为空导致错误需要返回的错误信息