Linux脚本编程:Bash shell脚本的大括号

${name:-default}使用一个默认值(一般是空值)来代替那些空的或者没有赋值的变量name;

例子

unset name

echo ${name:-111}

结果111

name=222

echo ${name:-111}

结果222

${name:=default}使用指定值来代替空的或者没有赋值的变量name;

貌似和上一个一样

${name:?message}如果变量为空或者未赋值,那么就会显示出错误信息并中止脚本的执行同时返回退出码1。

${#name} 给出name的长度
${name%word} 从name的尾部开始删除与word匹配的最小部分,然后返回剩余部分
${name%%word} 从name的尾部开始删除与word匹配的最长部分,然后返回剩余部分
${name#word} 从name的头部开始删除与word匹配的最小部分,然后返回剩余部分
${name##word} 从name的头部开始删除与word匹配的最长部分,然后返回剩余部分

相关推荐