${PUBLIC_INTERFACE:-eth0}
:- 的用途是什么?
含义:如果 $PUBLIC_INTERFACE 存在且不是 null,则返回其值,否则返回 "eth0"。
${parameter:-word} 使用默认值。如果 parameter 未设置或为 null,则 word 的扩展将被替换。否则,parameter 的值将被替换。
${parameter:=word} 分配默认值。如果 parameter 未设置或为 null,则 word 的扩展被分配给 parameter。然后 parameter 的值被替换。位置参数和特殊参数不能以这种方式分配。
${parameter:?word} 如果为 null 或未设置,则显示错误。如果 parameter 为 null 或未设置,则 word 的扩展(如果 word 不存在,则为此显示一条消息)将写入标准错误,并且 shell(如果它不是交互式的)将退出。否则,parameter 的值将被替换。
${parameter:+word} 使用替代值。如果 parameter 为 null 或未设置,则不替换任何内容,否则 word 的扩展将被替换。
# 示例
$ v=abc
$ echo ${v-unset}
abc
$ echo ${v1-unset}
unset
$ var2=
$ : ${var2:=default}
$ echo $var2
default
$ var3=
$ : ${var3:?var is unset or null}
bash: var3: var is unset or null
$ var4=100
$ echo ${var4:+var is set and not null}
var is set and not null
参考资料:
bash(1) - Linux manual page文章来源:https://www.toymoban.com/news/detail-642641.html
stackoverflow question 10390406文章来源地址https://www.toymoban.com/news/detail-642641.html
到了这里,关于bash中(冒号破折号)的用法 —— 筑梦之路的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!