PowerShell - переменные среды - различие между пользовательскими и системными переменными


2

Как я могу отображать переменные среды в PowerShell и уметь различать, какие из них являются "пользовательскими", а какие - "системными"?

Ответы:


3

Не профессионал PowerShell, но, в худшем случае, вы могли бы порыбачить в реестре и посмотреть, появляются ли там интересующие вас переменные. Внутри данного сеанса я не уверен, что есть какие-либо различия между пользовательскими / системными переменными, кроме места хранения реестра ...

Подходящие ключи:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Диспетчер сеансов \ Среда
HKEY_CURRENT_USER \ Environment

2
Правильно: в процессе нет различий. И, конечно PATHже, это комбинация системных и пользовательских настроек, так как они не установлены.
Ричард

0

Чтобы узнать в PowerShell:

Get-ItemProperty -Path 'Registry::HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment'

Get-ItemProperty -Path 'Registry::HKCU\Environment'

0

Поскольку PowerShell имеет доступ к .NET Framework, вы можете использовать

[System.Environment] :: GetEnvironmentVariables ([System.EnvironmentVariableTarget] :: Machine ) [System.Environment] :: GetEnvironmentVariables ([System.EnvironmentVariableTarget] :: Процесс ) [System.Environment] :: GetEnvironmentVariables ([System.EnvironmentVariableTarget] :: Пользователь )

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.