Получите значение переменной среды, имя которой хранится в переменной

#powershell #environment-variables

Вопрос:

Я пытаюсь придумать легкую для чтения и понятную идиому, которая оценивает значение переменной среды, имя которой хранится в переменной:

 $varName='TEMP'
 

Я придумал

 $val = invoke-expression "`$env:$varName"
 

и мне интересно, есть ли более подходящая альтернатива.

Ответ №1:

env: настоящий PSD-накопитель, поддерживающий поиск предметов:

 $val = (Get-Item -Path env:$varName).Value