Как экспортировать и импортировать переменные среды в Windows?
Мне показалось, что синхронизировать переменные среды на разных машинах сложно. Я просто хочу экспортировать настройки с одного компьютера и импортировать их в другие.
Я думаю, что это должно быть возможно, но не знаю, как это сделать. Может кто-нибудь мне помочь? Благодарю.
Ответы
Ответ 1
Вы можете использовать RegEdit для экспорта следующих двух ключей:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
HKEY_CURRENT_USER\Environment
Первый набор - системные/глобальные переменные среды; второй набор - переменные уровня пользователя. Отредактируйте при необходимости, а затем импортируйте файлы .reg на новый компьютер.
Ответ 2
Я бы использовал команду SET из командной строки, чтобы экспортировать все переменные, а не только PATH, как было рекомендовано выше.
C:\> SET >> allvariables.txt
Ответ 3
Чтобы экспортировать пользовательские переменные, откройте командную строку и используйте regedit с /e
Пример:
regedit /e "%userprofile%\Desktop\my_user_env_variables.reg" "HKEY_CURRENT_USER\Environment"
Ответ 4
Объедините @vincsilver и @jdigital ответы с некоторыми изменениями,
- экспортировать
.reg
в текущий каталог
- добавить метку даты
код:
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
Вы можете получить доступ к переменным среды в командной строке или в реестре.
Командная строка
Если вам нужна определенная переменная среды, просто введите ее имя (например, PATH), а затем введите " > " и имя файла, для которого нужно написать. Следующее выведет переменную среды PATH в файл с именем path.txt.
C:\> PATH > path.txt
Метод реестра
В реестре Windows хранятся все переменные среды, в разных местах, в зависимости от того, какой набор вы используете. Вы можете использовать команды импорта/экспорта реестра, чтобы переместить их на другой компьютер.
Для системных переменных:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
Для пользовательских переменных:
HKEY_CURRENT_USER\Environment
Ответ 6
Мой любимый способ сделать это - написать его как пакетный скрипт, чтобы объединить пользовательские и системные переменные в один файл резервной копии, например, создать файл 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
который вы можете использовать для повторного импорта существующих переменных среды. Это добавит и переопределит новые переменные, но не удалит существующие :)