Azure devops Devops Yaml获取另一个变量中的变量值

Azure devops Devops Yaml获取另一个变量中的变量值,azure-devops,yaml,Azure Devops,Yaml,在Azure devops中,我希望在任务中使用变量,但我希望变量的内容而不是名称本身,因此这是额外的间接级别 somecommand --value `"$(MyVariable)`" MyVariable最终来自devops中设置的变量组,并在文件顶部的变量部分列出 因此,如果我有一个变量MyVariable=“foo”,而我的变量组有一个成员foo=“bar”,那么这就是结果 somecommand--值“bar” 我如何做这个额外的间接层次 我如何做这个额外的间接层次 如果在变量组中有

在Azure devops中,我希望在任务中使用变量,但我希望变量的内容而不是名称本身,因此这是额外的间接级别

somecommand --value `"$(MyVariable)`"
MyVariable最终来自devops中设置的变量组,并在文件顶部的变量部分列出

因此,如果我有一个变量MyVariable=“foo”,而我的变量组有一个成员foo=“bar”,那么这就是结果

somecommand--值“bar”

我如何做这个额外的间接层次

我如何做这个额外的间接层次

如果在变量组中有
foo=bar
,在管道变量中有
MyVariable=foo
,即使在我们创建了之后,VST也不支持嵌套变量,如
$($(MyVariable))

要使您的
somecommand--value“$(MyVariable)”
扩展到
somecommand--value“bar”
,您应该在管道变量中设置
MyVariable=$(foo)
,而不是
foo

通过这种方式,
$(MyVariable)
可以在传递到命令时扩展到


另一种替代方法是使用内联Powershell任务设置变量。您可能会从这两个类似问题(,)中获得一些帮助。

您是否使用Bash执行
somecommand
?如果是这样,您可以执行
somecommand--value“${!MyVariable}”
。我只是在使用Azure Devops,我不知道它在后台使用了什么。目前,Azure Devops任务中不支持嵌套变量,如
$($(MyVariable))=>$(foo)=>bar
,另一种方法是设置变量
MyVariable
=
$(foo)
而不是
foo
。。。我们也可以使用内联PS任务来完成类似和的任务。