Bash set -u 允许单个未绑定变量

Bash set -u allow single unbound variable

使用 bash,您可以允许 set -e 使特定命令失败,例如:

someCommandThatProbablyFails || true

set -u 是否有任何允许特定变量解除绑定的东西?

具体来说,我正在做类似的事情:

if [ -n "" ]; then
    SOMEVAR=""
else
    SOME_STUFF_TO_DETERMINE_SOMEVAR
fi

在这种情况下,如果未从命令行向脚本传递任何内容,则 "" 会触发未绑定变量错误。

您可以使用空字符串作为未设置变量的 default,如下所示:

${POSSIBLY_UNSET_VARIABLE-}