我刚刚在 bash 中发现了 set -u
,它帮助我找到了几个以前看不见的错误。但是我也有一个场景,我需要在计算一些默认值之前测试是否定义了一个变量。我想到的最好的办法是:
if [ "${variable-undefined}" == undefined ]; then
variable="$(...)"
fi
这有效(只要变量没有字符串值 undefined
)。请问有没有更好的办法?
最佳答案
这是我发现最适合我的方法,从其他答案中汲取灵感:
if [ -z "${varname-}" ]; then
...
varname=$(...)
fi
关于bash - 在 Bash 中,如何测试变量是否定义为 "-u"模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11362250/