什么:?运算符在 bash 中做什么?

What does :? operator do in bash?

我在 bash 文件中有这样的表达式:

MY_NEW_VAR="path/${MY_VARIABLE:?}"

什么:?运算符是什么意思?

如果 $MY_VARIABLE 存在且不为空,return 它是值。
如果它不存在或为空,则打印您可以设置的错误消息。

MY_NEW_VAR='path/${MY_VARIABLE:?"error message"}'

如果没有给出错误信息,它return parameter null or not set.