Подтвердить что ты не робот

Переменные среды в PowerShell с точкой (.) В имени

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

Я не могу понять, как получить доступ к переменной среды с именем FOO.BAR.

$Env:FOO.BAR не работает. Как я могу получить доступ к этому из PowerShell?

4b9b3361

Ответ 1

Чтобы получить доступ к любому виду переменной PowerShell, где имя содержит не алфавитно-цифровые символы, используйте обозначение $ {…}, как в:

${env:variable.with.dots} = "Hi there"
${env:variable.with.dots}

Это работает для переменных на любом диске (реестр, файловая система и т.д.)

Ответ 2

Используйте метод .NET, чтобы получить переменную:

[Environment]::GetEnvironmentVariable("FOO.BAR")

Ответ 3

Использование:

Get-WMIObject Win32_Environment -filter "name='foo.bar'"