Гид по технологиям

Как добавить, изменить и удалить переменные среды в Windows

6 min read Windows Обновлено 03 Dec 2025
Переменные среды Windows: добавить, изменить, удалить
Переменные среды Windows: добавить, изменить, удалить

Фоны рабочего стола Windows 11 и 10.

Быстрые ссылки

  • Как добавить или изменить переменную среды

  • Как удалить переменную среды


Что такое переменная среды (одной строкой)

Переменная среды — это именованное значение, доступное приложениям и процессам в системе, например PATH, TMP или пользовательские переменные.

Предупреждения и важные заметки

Важно: Для изменения системных переменных требуется запуск CMD от имени администратора. Неправильные изменения реестра могут повредить систему — делайте резервную копию перед удалением.

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


Как открыть Command Prompt от имени администратора

  1. Нажмите «Пуск», введите “cmd” в поле поиска.
  2. Щёлкните правой кнопкой по «Командная строка» и выберите «Запуск от имени администратора».

Нажмите «Запуск от имени администратора».

Любая пользовательская переменная может быть изменена в обычном окне CMD, а системные — только в повышенном режиме.


Как добавить или изменить переменную среды

Существует два основных подхода:

  • Временное назначение — команда set, действует только в текущем окне или процессе.
  • Постоянное назначение — команда setx, записывает значение в реестр и сохраняется между перезагрузками.

Временное назначение (set)

Команда set задаёт переменную только для текущего процесса. Это удобно для тестов и скриптов.

Пример: создать переменную LifeAnswerVar со значением 42:

set LifeAnswerVar=42

Пока окно CMD открыто, переменная LifeAnswerVar доступна и равна 42.

Командная строка с set lifevar=42

Если окно закрыть — переменная исчезнет.

Новое окно CMD, где LifeAnswerVar не определена.

Тот же приём работает для системных переменных в рамках текущего процесса: замените имя переменной на нужное.

Пример: временно перенести TMP в папку C:\Example Folder:

set TMP=C:\"Example Folder"

Папка TMP перемещена в Example Folder

Первая строка set TMP показывает текущее значение TMP, вторая — присваивает новое значение, третья подтверждает изменение.

Постоянное назначение (setx)

Команда setx записывает переменные в реестр Windows. Они сохраняются между перезагрузками и видимы новым процессам.

Пример: создать системную переменную ExVar1 со значением “Tomato”:

setx ExVar1 Tomato /m

Флаг /m указывает на создание переменной в системной области (HKEY_LOCAL_MACHINE), а не в пользовательской (HKEY_CURRENT_USER).

ExVar1 задана в командной строке

Если вы используете setx для изменения переменной, команда set в уже открытом окне не покажет новое значение — откройте новое окно CMD.

Если нужно добавить или изменить пользовательскую переменную, просто опустите /m.


Как удалить переменную среды

Удаление сложнее добавления: временное удаление просто обнуляет значение в текущем процессе, постоянное — требует правки реестра через reg.

Как и раньше, системные переменные удаляются из повышенного CMD, пользовательские — из обычного.

Временное удаление (в рамках процесса)

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

Если в реестре есть ExVar1=Tomato, но вы хотите игнорировать его в текущей сессии:

set ExVar1=

Переменная будет пустой до закрытия окна или окончания выполнения скрипта.

ExVar1 временно очищена.

Постоянное удаление (reg)

Для окончательного удаления используйте reg — командную строку для редактирования реестра. Будьте осторожны и перед изменениями создайте резервную копию ключа реестра.

Где хранятся переменные:

  • Пользовательские: HKEY_CURRENT_USER\Environment
  • Системные: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

Предположим, ExVar1=Tomato — системная переменная. Её полная ветка:

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

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

Команда для удаления ключа (замените ExVar1 на своё имя переменной):

reg delete "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\" /f /v ExVar1

Разбор параметров:

  • reg delete — приложение и команда.
  • "HKEY_LOCAL_MACHINE\...\Environment\" — ветка реестра (в кавычках из‑за пробелов).
  • /f — удалять без подтверждения.
  • /v — указывает имя значения (value) для удаления.
  • ExVar1 — имя удаляемого значения.

Если ExVar1 была пользовательской, команда будет проще:

reg delete HKEY_CURRENT_USER\Environment /f /v ExVar1

При успешном удалении вы увидите в CMD сообщение “The operation completed successfully”.

Reg delete использован для удаления ExVar1 из пользовательских переменных

После удаления обязательно перезапустите проводник (explorer.exe) или перезагрузите компьютер, чтобы изменения вступили в силу для рабочих столов и приложений.


Частые ошибки и как их исправить

  • Ошибка: команда не находит значение после setx — причина: новое значение видимо только в новых процессах; откройте новое окно CMD.
  • Ошибка: отказано в доступе при reg delete — причина: не тот уровень привилегий; запустите CMD от имени администратора.
  • Ошибка: некорректный путь с пробелами — причина: отсутствие кавычек вокруг пути; оберните путь в ".
  • Ошибка: случайное удаление важной переменной — восстановите из резервной копии реестра (если есть) или вручную создайте переменные по умолчанию.

Совет: перед reg delete сделайте экспорт ветки, чтобы вернуть изменения при необходимости:

reg export "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" backup_env.reg

Мини‑методология: безопасный рабочий процесс (шаги)

  1. Оцените, нужно ли временно «приглушить» переменную (set) или удалить/изменить навсегда (setx/reg).
  2. Прежде чем менять что‑то в реестре — экспортируйте ветку (reg export ...).
  3. Выполните команду в тестовой среде (локальное окно, скрипт) и проверьте поведение.
  4. Для системных изменений используйте повышенный CMD и документируйте изменения.
  5. Перезапустите explorer.exe или выполните полную перезагрузку и проверьте результат.

Чеклист по ролям

Администратор:

  • Запустить CMD от имени администратора.
  • Экспортировать текущую ветку реестра перед изменениями.
  • Удалять только проверенные и задокументированные значения.
  • Оповестить команду о возможной перезагрузке сервисов.

Разработчик / тестировщик:

  • Использовать set для локального тестирования.
  • После проверки применить setx только если нужно постоянное поведение.
  • При тестировании CI использовать контейнеры/тестовые машины.

Пользователь:

  • Если не уверены — обратитесь к администратору.
  • Не удаляйте системные переменные самостоятельно.

Пошаговый план отката (runbook)

  1. Если операция пошла не так, не перезагружайте систему сразу — зафиксируйте текущее состояние.
  2. Если вы экспортировали ветку реестра до изменений, восстановите её командой:
reg import backup_env.reg
  1. Если вы не экспортировали ветку, вручную повторно создайте удалённые значения (по документу или другим хостам).
  2. Перезапустите explorer.exe и проверьте, вернулось ли поведение.
  3. При серьёзных проблемах откатитесь к последней точке восстановления системы или обратитесь к техподдержке.

Диагностическое дерево принятия решения

flowchart TD
  A[Нужно изменить переменную среды?] --> B{Временное или постоянное?}
  B -->|Временное| C[Использовать set в текущем окне или скрипте]
  B -->|Постоянное| D{Пользовательская или системная?}
  D -->|Пользовательская| E[Использовать setx без /m]
  D -->|Системная| F[Использовать setx с /m или reg для удаления]
  F --> G{Удаление или изменение?}
  G -->|Изменение| H[setx Var Value /m]
  G -->|Удаление| I[reg delete '...\Environment\' /f /v VarName]
  C --> J[Тест и закрыть окно]
  E --> K[Открыть новое окно CMD для проверки]
  H --> K
  I --> L[Перезапустить explorer.exe или компьютер]
  K --> M[Проверить поведение приложений]
  L --> M

Критерии приёмки

  • Новая или изменённая переменная доступна в новых окнах CMD (для setx) или в текущем окне (для set).
  • При удалении через reg значение отсутствует в соответствующей ветке реестра.
  • После перезапуска Explorer изменения видимы во всех приложениях, которые зависят от переменной.

Краткий словарь (1‑строчно)

  • Переменная среды: именованное значение, видимое процессам.
  • CMD: командная строка Windows.
  • set: временно установить переменную в текущем процессе.
  • setx: записать переменную в реестр (постоянно).
  • reg: утилита для управления реестром через командную строку.

Когда этот подход не подходит (контрпример)

  • Если нужно массово изменить переменные на ферме серверов — лучше использовать групповую политику (GPO) или управление конфигурацией (Ansible, SCCM), а не ручные reg-команды на каждом хосте.
  • В сценариях контейнеризации переменные среды лучше задавать средствами контейнера (Dockerfile, переменные окружения runtime), а не менять реестр хоста.

Заключение

Работа с переменными среды в Windows делится на безопасные временные изменения (set) и постоянные изменения через setx или reg. Для системных прав используйте повышенный CMD, перед удалением значений делайте экспорт ветки реестра. Следуйте чеклистам и процедурам отката, чтобы минимизировать риск простоя.

Связанные материалы: Как просмотреть переменные среды в Linux (рекомендации по сопоставлению подходов).

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Селфи жестами и голосом на Samsung
Мобильная фотография

Селфи жестами и голосом на Samsung

Добавить контакт на главный экран
Мобильные устройства

Добавить контакт на главный экран

Как смотреть ТВ онлайн бесплатно
Развлечения

Как смотреть ТВ онлайн бесплатно

Ошибка IPTV 401: как исправить шаг за шагом
IPTV

Ошибка IPTV 401: как исправить шаг за шагом

Как обнаружить скрытые камеры на Android
Приватность

Как обнаружить скрытые камеры на Android

Motion Photo на Samsung Galaxy — включение и советы
Фотография

Motion Photo на Samsung Galaxy — включение и советы