Настройка переменных среды Windows PowerShell

Это было бы самое чистое решение, так как большую часть времени вы действительно хотите переключить этот контекст для своих последовательных вызовов методов:

Также легче понять концепцию.

    // store scope reference for our delegating method
    var that = this;
    setInterval(function() {
        // this would be changed here because of method scope, 
        // but we still have a reference to that
        OURMETHODNAME.call(that);
    }, 200);
525
задан Peter Mortensen 23 April 2019 в 20:54
поделиться

3 ответа

Изменение фактических переменных среды может быть сделано при помощи env: namespace / drive информация. Например, этот код обновит переменную среды пути:

$env:Path = "SomeRandomPath";             (replaces existing path) 
$env:Path += ";SomeRandomPath"            (appends to existing path)

Существуют способы сделать параметры среды постоянными, но если Вы только используете их от PowerShell, вероятно, намного лучше использовать Ваш профиль для инициирования настроек. На запуске PowerShell выполнит любые .ps1 файлы, которые он находит в WindowsPowerShell каталог под папкой My Documents. Обычно у Вас уже есть файл профиля ps1 там. Путь на моем компьютере

C:\Users\JaredPar\Documents\WindowsPowerShell\profile.ps1
409
ответ дан 22 November 2019 в 22:16
поделиться

Если во время сеанса PowerShell вам потребуется временно добавить к переменной среды PATH, вы можете сделать это так:

$env:Path += ";C:\Program Files\GnuWin32\bin"
605
ответ дан 22 November 2019 в 22:16
поделиться

Вы также можете изменить переменные среды пользователя / системы навсегда (т.е. будут постоянными при перезапусках оболочки) следующим образом:

Изменить переменную системной среды

[Environment]::SetEnvironmentVariable
     ("Path", $env:Path, [System.EnvironmentVariableTarget]::Machine)

Изменить переменная среды пользователя

[Environment]::SetEnvironmentVariable
     ("INCLUDE", $env:INCLUDE, [System.EnvironmentVariableTarget]::User)

Использование из комментариев - добавить в системную переменную среды

[Environment]::SetEnvironmentVariable(
    "Path",
    [Environment]::GetEnvironmentVariable("Path", [EnvironmentVariableTarget]::Machine) + ";C:\bin",
    [EnvironmentVariableTarget]::Machine)

Решение на основе строк также возможно, если вы не хотите писать типы

[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\bin", "Machine")
236
ответ дан 22 November 2019 в 22:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: