Как экспортировать и импортировать переменные среды в Windows? - PullRequest
74 голосов
/ 18 февраля 2009

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

Я думаю, что это возможно, но не знаю, как это сделать. Может кто-нибудь мне помочь? Благодарю.

Ответы [ 6 ]

103 голосов
/ 18 февраля 2009

Вы можете использовать RegEdit для экспорта следующих двух ключей:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

HKEY_CURRENT_USER\Environment

Первый набор - системные / глобальные переменные среды; второй набор - переменные уровня пользователя. Отредактируйте при необходимости, а затем импортируйте файлы .reg на новый компьютер.

72 голосов
/ 28 февраля 2011

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

C:\> SET >> allvariables.txt
15 голосов
/ 15 мая 2012

Чтобы экспортировать пользовательские переменные, откройте командную строку и используйте regedit с / e

Пример:

regedit /e "%userprofile%\Desktop\my_user_env_variables.reg" "HKEY_CURRENT_USER\Environment"
9 голосов
/ 14 февраля 2017

Объедините ответы @vincsilver и @jdigital с некоторыми изменениями,

  1. экспорт .reg в текущий каталог
  2. добавить отметку даты

код:

set TODAY=%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%

regedit /e "%CD%\user_env_variables[%TODAY%].reg" "HKEY_CURRENT_USER\Environment"
regedit /e "%CD%\global_env_variables[%TODAY%].reg" "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"

Вывод хотел бы:

global_env_variables[2017-02-14].reg
user_env_variables[2017-02-14].reg
5 голосов
/ 18 февраля 2009

Вы можете получить доступ к переменным среды либо в командной строке, либо в реестре.

Командная строка

Если вам нужна конкретная переменная окружения, просто введите ее имя (например, PATH), затем «>» и имя файла для записи. Следующее будет выгружать переменную среды PATH в файл с именем path.txt.

C:\> PATH > path.txt

Метод регистрации

Реестр Windows содержит все переменные среды в разных местах, в зависимости от того, какой набор вам нужен. Вы можете использовать команды импорта / экспорта реестра, чтобы перенести их на другой компьютер.

Для системных переменных:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

Для пользовательских переменных:

HKEY_CURRENT_USER\Environment
0 голосов
/ 12 апреля 2019

Мой любимый способ сделать это - написать его как пакетный скрипт, чтобы объединить пользовательские и системные переменные в один файл резервной копии, например, создать файл environment-backup.bat и вставить в него:

@echo off
:: RegEdit can only export into a single file at a time, so create two temporary files.
regedit /e "%CD%\environment-backup1.reg" "HKEY_CURRENT_USER\Environment"
regedit /e "%CD%\environment-backup2.reg" "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"

:: Concatenate into a single file and remove temporary files.
type "%CD%\environment-backup1.reg" "%CD%\environment-backup2.reg" > environment-backup.reg
del "%CD%\environment-backup1.reg"
del "%CD%\environment-backup2.reg"

Это создает environment-backup.reg, который вы можете использовать для повторного импорта существующих переменных среды. Это добавит и переопределит новых переменных, но не удалит существующие:)

...