it-swarm.com.ru

Задать системную переменную среды из пакетного файла Windows?

Можно ли установить переменную среды на системном уровне из командной строки в Windows 7 (или даже XP в этом отношении). Я бегу из командной строки с повышенными правами.

Когда я использую команду set (set name=value), переменная среды кажется действительной только для сеанса командной строки.

177
Santhosh

Средства поддержки XP (которые можно установить с вашего компакт-диска XP) поставляются с программой setx.exe:

C:\Program Files\Support Tools>setx /?

SETX: This program is used to set values in the environment
of the machine or currently logged on user using one of three modes.

1) Command Line Mode: setx variable value [-m]
   Optional Switches:
    -m  Set value in the Machine environment. Default is User.

...
For more information and example use: SETX -i

Я думаю, что Windows 7 на самом деле поставляется с setx как часть стандартной установки.

167
Hugh Allen

Простой пример того, как установить Java_HOME с помощью setx.exe в командной строке:

setx Java_HOME "C:\Program Files (x86)\Java\jdk1.7.0_04"

Это установит переменную окружения "Java_HOME" для текущего пользователя. Если вы хотите установить переменную для всех пользователей, вы должны использовать опцию "-m". Вот пример:

setx -m Java_HOME "C:\Program Files (x86)\Java\jdk1.7.0_04"

Примечание: вы должны выполнить эту команду от имени администратора.

Примечание: Обязательно запустите команду setx из Окно администратора командной строки

125
Mindaugas Jaraminas

Если вы устанавливаете переменную через SETX, вы не можете использовать эту переменную или ее изменения немедленно. Вы должны перезапустить процессы, которые хотят его использовать.

Используйте следующую последовательность, чтобы непосредственно установить ее в процессе установки (отлично работает для меня в сценариях, которые выполняют некоторые инициализации после установки глобальных переменных) :

SET XYZ=test
SETX XYZ test
18
Anton F.

Для XP я использовал (бесплатное/бесплатное программное обеспечение) инструмент под названием "RAPIDEE" (Rapid Environment Editor), но SETX определенно достаточно для Win 7 (я не знал об этом раньше).

2
FractalSpace

На всякий случай, если вам нужно будет удалить переменную, вы можете использовать SETENV из Vincent Fatica, доступный по адресу http://barnyard.syr.edu/~vefatica . Не совсем недавно ('98), но все еще работает на Windows 7 x64.

1
abort

Системные переменные могут быть установлены через CMD и реестр. Например. reg запрос "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"/v PATH

Все обычно используемые коды CMD и системные переменные приведены здесь: Установите системные переменные среды Windows, используя CMD .

Откройте CMD и введите Set

Вы получите все значения системной переменной.

Введите set Java , чтобы узнать подробности пути Java, установленного в вашей оконной ОС.

1
Himanshu Singh