${VAR:-string} 如果 VAR 变量为空则返回string


${VAR:+string} 如果 VAR 变量不为空则返回 string


${VAR:=string} 如果 VAR 变量为空则重新赋值 VAR 变量值为 string


${VAR:?string} 如果 VAR 变量为空则将 string 输出到 stderr

如果变量为空就返回 hello world!: 
# VAR=
# echo ${VAR:-'hello world!'} 
hello world!


如果变量不为空就返回 hello world!: 
# VAR="hello"
# echo ${VAR:+'hello world!'} 
hello world!


如果变量为空就重新赋值: 
# VAR=
# echo ${VAR:=hello} hello
# echo $VAR hello


如果变量为空就将信息输出 stderr: 
# VAR=
# echo ${VAR:?value is null}
-bash: VAR: value is null

${}主要用途大概就这么多了,另外还可以获取数组元素,在后面章节会讲到。