什么是`:-`在`FOO = $ {BAR:-localhost}中做什么?

时间:2014-02-22 17:44:19

标签: bash syntax environment-variables

如果FOO为空,我可以看到以下代码正在将localhost初始化为BAR,但是:-究竟发生了什么?它是什么?

1 个答案:

答案 0 :(得分:5)

如果BAR具有非空值,则将为FOO分配该值。如果没有,FOO将被分配localhost。您可以在Shell Parameter Expansion找到更多方法。

  

$ {参数:-word}

If parameter is unset or null, the expansion of word is substituted.
Otherwise, the value of parameter is substituted.