一.命令替换
可以用‘command’, 也可以用$(command).
二者是有区别的,先看一下'command'(注意:这里不是引号,而反引号)
1. `command' 用来做命令替换
2. $(comand)用来做命令替换
下面这个是$(command)
二. 变量替换
变量替换可以根据变量的状态(是否为空、是否定义等)来改变它的值,可以使用的变量替换形式:
形式 | 说明 |
---|---|
${var} | 变量本来的值 |
${var:-word} | 如果变量 var 为空或已被删除(unset),那么返回 word,但不改变 var 的值。 |
${var:=word} | 如果变量 var 为空或已被删除(unset),那么返回 word,并将 var 的值设置为 word。 |
${var:?message} | 如果变量 var 为空或已被删除(unset),那么将消息 message 送到标准错误输出,可以用来检测变量 var 是否可以被正常赋值。 若此替换出现在Shell脚本中,那么脚本将停止运行。 |
${var:+word} | 如果变量 var 被定义,那么返回 word,但不改变 var 的值。 |