Я знаю, что могу получить доступ к переменным среды в PowerShell с помощью $Env. Например, я могу получить доступ к FOO с помощью $Env:FOO.
Я не могу понять, как получить доступ к переменной окружения FOO.BAR.
$Env:FOO.BAR не работает. Как я могу получить к нему доступ из PowerShell?





Используйте метод .NET, чтобы получить переменную:
[Environment]::GetEnvironmentVariable("FOO.BAR")
Использовать:
Get-WMIObject Win32_Environment -filter "name='foo.bar'"
Чтобы получить доступ к любой переменной PowerShell, имя которой содержит не буквенно-цифровые символы, используйте нотацию $ {…}, как в:
${env:variable.with.dots} = "Hi there"
${env:variable.with.dots}
Это работает для переменных на любом диске (реестр, файловая система и т. д.)
Это также работает для символа тире, например
${env:My-Environment-Variable}