Как установить переменную среды в зависимости от другой?(Windows) - PullRequest
0 голосов
/ 13 июня 2019

Я ищу способ для Windows, как установить переменную среды, зависящую от другой. В моем случае я хочу добавить новый путь к PYTHONPATH. Допустим, существует переменная окружения

%INSTALLATION_DIR% = D:\Programs\MyProject

Самый простой способ сделать это будет:

SETX PYTHONPATH "%PYTHONPATH%;%INSTALLATION_DIR%\Utility\Scripts"

Но тогда %INSTALLATION_DIR% напрямую заменяется на D:\Programs\MyProject, поэтому PYTHONPATH не обновляется при изменении %INSTALLATION_DIR%.

Есть ли способ записать текст %INSTALLATION_DIR% в переменную окружения, не оценивая переменную напрямую?

Если возможно, я хочу сделать это в автоматическом режиме (например, с помощью консоли, powershell или python), чтобы написать скрипт, который добавляет список путей к PYTHONPATH.

Ответы [ 2 ]

0 голосов
/ 13 июня 2019

Я только что нашел решение. Если имя переменной среды записано в кавычках, оно не будет оцениваться.

SETX PYTHONPATH "%PYTHONPATH%;%"INSTALLATION_DIR"%\Utility\Scripts"

0 голосов
/ 13 июня 2019

относитесь к% так же, как к специальному символу. удвоить % так

SETX PYTHONPATH "%PYTHONPATH%;%%INSTALLATION_DIR%%\Utility\Scripts"

...