Bash 将命令输出为null

Bash 将命令输出为null,bash,azure-devops,null,Bash,Azure Devops,Null,我正在使用Azure管道变量为命令构造一组参数。我必须用于Azure管道的变量类型是宏格式的(如$(var)),您可以在此处看到它的详细信息: 如果$(var)不包含值,它将打印$(var) 当我运行命令时,没有传入该值,屏幕上会出现一个错误,提示找不到该命令。目前这并不是什么大问题,我下面的一组命令不会出错,但我希望至少能抑制它 VAR_TERRAFORMDESTROY="$(TERRAFORMDESTROY)" if [ ${#VAR_TERRAFORMDESTROY}

我正在使用Azure管道变量为命令构造一组参数。我必须用于Azure管道的变量类型是宏格式的(如
$(var)
),您可以在此处看到它的详细信息:

如果
$(var)
不包含值,它将打印
$(var)

当我运行命令时,没有传入该值,屏幕上会出现一个错误,提示找不到该命令。目前这并不是什么大问题,我下面的一组命令不会出错,但我希望至少能抑制它

VAR_TERRAFORMDESTROY="$(TERRAFORMDESTROY)"

if [ ${#VAR_TERRAFORMDESTROY} -ge 1 ]; then
  VAR_TERRAFORMDESTROY="yes"
else
  VAR_TERRAFORMDESTROY="no"
fi
在日志输出中,它将打印
/vsts/\u work/\u temp/4e426335-0930-4375-b05c-c4dbbcb38139.sh:第5行:TERRAFORMDESTROY:未找到命令

我尝试了
VAR_TERRAFORMDESTROY=“$(TERRAFORMDESTROY)”>/dev/null 2>&1
,但由于
/dev/null 2>&1不在括号()内,因此它不会将结果输出为null。由于Azure YAML变量的工作方式,它不能在括号内

有人能为我建议一些抑制
命令未找到
输出的方法吗

有人能为我建议一些抑制命令未找到输出的方法吗

禁止显示组错误消息

{ VAR_TERRAFORMDESTROY="$(TERRAFORMDESTROY)"; } > /dev/null 2>&1

只需
VAR_TERRAFORMDESTROY='$(TERRAFORMDESTROY)
然后是
if[[VAR_TERRAFORMDESTROY='$(“TERRAFORMDESTROY”)'];然后VAR_TERRAFORMDESTROY=“nothing”;fi