У меня есть переменная конвейера с именем TestVariable
.
Я могу легко получить доступ к этой переменной из сценария PS следующим образом:
write-host $(TestVariable)
Но если имя этой переменной было динамическим c, есть ли способ получить доступ к значению переменной из PS?
Например, имя переменной будет go в строковой переменной. Я пробовал эти комбинации в качестве экспериментов ... они просто возвращают имя переменной, а не значение (что неудивительно):
$varname="TestVariable"
write-host $($varname)
write-host $("$varname")
write-host $"($varname)"
write-host $("($varname)")
Думаю, ответ отрицательный, но я хочу быть уверенным. Любая помощь очень ценится!
Изменить - примечание
Оба ответа отвечают на вопрос, но не решают мою проблему. Попробовав решения, я понял, что пропустил дополнительное осложнение, ответы на которое, к сожалению, не помогают. Обращаю внимание на тот случай, если кто-то попытается сделать что-то подобное.
Дополнительная сложность заключается в том, что значение переменной устанавливается во время выпуска (я пытаюсь получить доступ к выходным переменным шаблона ARM).
Я думал, что смогу задействовать API и получить «живое» значение переменной, но, к сожалению, данные о выпуске не существуют (из API) до его завершения.
Итак, когда я вызываю это во время выпуск:
https://vsrm.dev.azure.com/ {company} / {project} / _ apis / release / Release / $ ($ releaseId)? api-version = 5.0
Я получаю «Выпуск с ID 38 не существует».