Я хочу установить переменную среды из командной строки, а затем иметь возможность доступа к ней глобально (например, я должен увидеть это, перейдя в System -> Environment Variables).
Когда я использую команду set, она не доступна в новом сеансе cmd.
set NEWVAR=SOMETHING
echo %NEWVAR%
Смежные вопросы:
Ответы:
Чтобы сделать переменную среды доступной глобально, вам нужно установить ее в реестре. Как вы поняли, просто используя:
вы просто устанавливаете его в текущем пространстве процесса.
Согласно этой странице вы можете использовать
setx
команду:setx
встроен в Windows 7, но для более старых версий может быть доступен только при установке Windows Resource Kitисточник
setx JAVA_HOME "C:\Program Files\Java\jdk1.7.0_45"
будет работать. Ноsetx JAVA_HOME C:\Program Files\Java\jdk1.7.0_45
даст вам синтаксические ошибкиМы также можем использовать «setx var variable / M», чтобы установить var на уровень переменной системной среды вместо уровня пользователя.
Примечание. Эта команда должна выполняться от имени администратора.
источник
/ M для установки уровня переменной системной среды вместо уровня пользователя, как @Minh Chau answer
Контрольная работа
Командная строка RESTART (если вы не перезапустите командную строку, переменная окружения не будет работать)
источник
Вы можете использовать
setx env var [/M]
как указано выше. Если это не вступает в силу, вы можете использоватьrefreshenv
для обновления переменных среды. Для этого не нужно перезагружать компьютер, explorer.exe или командную строку.Изменить: явно refreshenv не приходит естественно с Windows, поэтому вот источник: https://pastebin.com/1fJqA0pT
Сохранить как RefreshEnv.cmd и поместите его в папку, которая включена в переменные среды PATH
источник
Системные переменные могут быть установлены через CMD и реестр. Например. запрос reg "HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment" / v PATH
Все обычно используемые коды CMD и системные переменные приведены здесь: Установите системные переменные среды Windows с помощью CMD .
Откройте CMD и введите Set
Вы получите все значения системной переменной.
Введите set java, чтобы узнать подробности пути java, установленного в вашей оконной ОС.
источник
Я хочу добавить, что если вы используете параметр / s с setx для установки переменных среды на удаленном компьютере, на целевом компьютере должна быть запущена служба «Удаленный реестр», иначе вы получите «ОШИБКА: указанная операция не может быть завершена. "
(Я попросил Microsoft обновить их статью TechNet о setx, чтобы включить эту информацию.)
источник