VAR_NAME=${VAR_NAME:- "/some/path/file" } 是什么意思



shell脚本中VAR_NAME=${VAR_NAME:-"/some/path/file"}是什么意思?

这是针对 init 脚本的,我正在编写一个自定义脚本,将我们的一些启动操作放入 init 脚本中,以便我们可以在启动时自动启动它们,但我在 shell 脚本方面没有太多经验,所以我使用启动脚本用于我们过去自定义的不相关的软件。

指向的路径指向一个文件,该文件包含覆盖脚本中设置的默认值的配置值。

我很难弄清楚该结构的真正含义(尤其是 :- 部分)。

我正在使用的脚本似乎也将此操作链接在一起以解析要使用的值,例如:

LOG_FILE=${LOG_FILE:-${LOGFILE:-$DEFAULT_LOG_FILE}}

  ${parameter:-word}
        Use Default Values. If parameter is unset or null, the expansion
        of word shall be substituted; otherwise, the value of parameter shall be
        substituted.

如果存在,它将VAR_NAME设置为等于VAR_NAME,如果不存在,则设置为/some/path/file。

只有当链上的变量名称不同时,链接它才有意义。

最新更新