- Переменные окружения Windows
- Полный список переменных среды Windows
- Как использовать переменные окружения
- Переменные окружения в графическом интерфейсе
- Что такое переменные среды Windows
- Настройка переменных среды Windows
- Настройка переменных среды Windows в графическом интерфейсе
- Настройка переменных окружения Windows в командной строке
Переменные окружения Windows
Переменные среды хранят информацию о среде операционной системы. Эта информация включает такие сведения, как путь к операционной системе, количество процессоров, используемых операционной системой, и расположение временных папок.
Переменные среды хранят данные, которые используются операционной системой и другими программами. Например, переменная среды WINDIR содержит местоположение установочного каталога Windows. Программы могут запрашивать значение этой переменной, чтобы определить, где находятся файлы операционной системы Windows.
Полный список переменных среды Windows
Переменная | Тип | Описание |
---|---|---|
%ALLUSERSPROFILE% | Локальная (пользовательская) | Возвращает расположение файлов профилей общих для всех пользователей. |
%APPDATA% | Локальная | Возвращает расположение, где приложение по умолчанию хранят данные. |
%CD% | Локальная | Возвращает строку с текущей папкой. |
%CMDCMDLINE% | Локальная | Возвращает точную строку команды, запустившую текущий Cmd.exe. |
%CMDEXTVERSION% | Системная (на уровне всей машины) | Возвращает номер версии текущего Command Processor Extensions. |
%COMPUTERNAME% | Системная | Возвращает имя компьютера. |
%COMSPEC% | Системная | Возвращает точный путь до исполнимого файла командной оболочки. |
%DATE% | Системная | Возвращает текущую дату. Использует такой же формат, как и команда date /t. Генерируется в Cmd.exe. |
%ERRORLEVEL% | Системная | Возвращает код ошибки самой последней исполненной команды. Ненулевое значение говорит об ошибке. |
%HOMEDRIVE% | Системная | Возвращает, какая буква диска локальной рабочей станции подключена к домашнему каталогу пользователя. Устанавливается в зависимости от значения домашнего каталога. Домашний каталог пользователя указан в Local Users and Groups («Локальные пользователи и группы»). |
%HOMEPATH% | Системная | Возвращает полный путь домашней директории пользователя. Устанавливается на основе значения домашней директории. Домашняя пользовательская директория указана в Local Users and Groups. |
%HOMESHARE% | Системная | Возвращает сетевой путь к общему домашнему каталогу пользователя. Устанавливается в зависимости от значения домашнего каталога. Домашний каталог пользователя указан в разделе «Локальные пользователи и группы». |
%LOGONSEVER% | Локальная | Возвращает имя контроллера домена, который проверил текущий сеанс входа в систему. |
%NUMBER_OF_PROCESSORS% | Системная | Указывает количество процессоров (ядер), установленных в компьютер. |
%OS% | Системная | Возвращает имя операционной системы. Все ОС после Windows 2000 показывают имя операционной системы как Windows_NT. |
%PATH% | Системная | Содержит список папок, в которых ищутся исполнимые файлы. |
%PATHEXT% | Системная | Возвращает список расширений, которые операционная система расценивается как исполнимые. |
%PROCESSOR_ARCHITECTURE% | Системная | Возвращает архитектуру чипа процессора. Примеры значений: x86, IA64, AMD64. |
%PROCESSOR_IDENTFIER% | Системная | Возвращает описание процессора. |
%PROCESSOR_LEVEL% | Системная | Возвращает номер модели процессора, установленного в компьютер. |
%PROCESSOR_REVISION% | Системная | Возвращает номер ревизии процессора. |
%PROMPT% | Локальная | Возвращает настройки приглашения командной строки для текущего интерпретатора. Генерируется в Cmd.exe. |
%RANDOM% | Системная | Возвращает случайное целое число между 0 и 32767. Генерируется в Cmd.exe. |
%SYSTEMDRIVE% | Системная | Возвращает диск, содержащий корневую директорию Windows (то есть это корень системы). |
%SYSTEMROOT% | Системная | Возвращает расположение корневой директории Windows. |
%TEMP% и %TMP% | Системная и пользовательская | Возвращает временные каталоги по умолчанию, которые используются приложениями, доступными для пользователей, вошедших в систему. Некоторые приложения требуют TEMP, а другие требуют TMP. |
%TIME% | Системная | Возвращает текущее время. Использует такой же формат, как и команда time /t. Генерируется в Cmd.exe. |
%USERDOMAIN% | Локальная | Возвращает имя домена, содержащего аккаунт пользователя. |
%USERNAME% | Локальная | Возвращает имя пользователя, который в данный момент выполнил вход в систему. |
%USERPROFILE% | Локальная | Возвращает расположение профиля текущего пользователя. |
%WINDIR% | Системная | Возвращает расположение директории операционной системы. |
%CommonProgramFiles% | Системная | Путь до папки с совместными файлами программ. |
%ProgramFiles(x86)% | Системная | Папка с файлами 32-битных программ. |
%CommonProgramW6432% | Системная | Путь до папки с совместными файлами программ. |
%USERDOMAIN_ROAMINGPROFILE% | Локальная | Домен профиля. |
%ProgramData% | Системная | Папка, в которой программы хранят данные. |
%WT_PROFILE_ID% | Локальная | Идентификатор профиля. |
%DriverData% | Системная | Папка хранения данных некоторых служб. |
%ProgramW6432% | Системная | Каталог с файлами программ. |
%PSModulePath% | Системная и пользовательская | Папки с модулями PowerShell. |
%WSLENV% | ||
%POWERSHELL_DISTRIBUTION_CHANNEL% | Системная и пользовательская | Канал распространения PowerShell. |
%LOCALAPPDATA% | Локальная | Папка хранения данных программ, индивидуальная для каждого пользователя. |
%ProgramFiles% | Системная | Папка с файлами программ. |
%JAVA_HOME% | Системная | Путь в который установлена виртуальная машина Java. |
%OneDrive% | Локальная | Путь до папки для хранения данных OneDrive. |
%WT_SESSION% | Локальная | Идентификатор сессии. |
%LOGONSERVER% | Локальная | Сервер, где был выполнен вход. |
%PUBLIC% | Системная | Папка для публичного доступа. |
%PROCESSOR_IDENTIFIER% | Системная | Описание процессора. |
%CommonProgramFiles(x86)% | Системная | Путь для общих файлов 32-битных программ. |
Как использовать переменные окружения
Переменные окружения, содержащие путь до каталога, можно вводить в адресную строку проводника и любого менеджера файлов.
Узнать, установить и изменить значение переменной окружения можно в командной строке и в программах.
Переменные окружения в графическом интерфейсе
Чтобы увидеть и отредактировать переменные окружения в настройках, в строку поиска на панели задач введите «Изменение системных переменных среды» и кликните Enter.
В открывшемся окне «Свойства системы» нажмите на кнопку «Переменные среды».
Вы увидите переменные среды пользователя (верхняя половина открывшегося окна) и системные переменные (нижняя половина).
Здесь вы можете создать новые переменные, а также изменить или удалить существующие.
Сделанные здесь изменения являются постоянными и сохраняться после перезагрузки.
Что такое переменные среды Windows
Операционные системы и Windows не исключение имеют в своем составе особый механизм хранения различной информации, называемый переменными. Кто знаком с программированием прекрасно понимает, что это. Остальные могут представить себе это в виде записи имя_переменной=значение переменной среды. Например, запись username=Vasya означает, что переменная с именем username содержит значение Vasya.
При этом подразумевается, что имя переменной неизменно, а значение может изменяться с течением времени. Представим себе, что в переменной username хранится имя текущего пользователя Windows. Когда мы вошли в систему под именем Vasya, то в username оказалось соответствующее значение, однако если мы сменим пользователя на Ivan, то и значение изменится и username будет равно Ivan. Из-за этой возможности изменяться их и называют переменными.
Они оказываются чрезвычайно полезными при создании скриптов, работе в командной строке и адресной строке Проводника. В основном они содержат информацию из разряда имя компьютера, имя пользователя, домашняя папка пользователя, каталог куда установлена ОС, архитектура процессора, папки для временных файлов и так далее.
Таким образом эта информация дает представление о текущем окружении, то есть описывает среду, в которой происходит выполнение программы, отсюда и получили свое название переменные среды (environment variables) или по-другому переменные окружения.
В чем их практический смысл? Представьте себе, что вы создаете командный файл, в котором используется путь к домашней папке пользователя, причем он должен работать на любом компьютере. Как его прописать, если имя учетной записи заранее не известно, да и расположение папки тоже? Конечно, его можно выяснить в недрах ОС, но гораздо проще и компактней просто написать %USERPROFILE%. Система сама заботится о правильном значении, поэтому в таком варианте скрипт будет корректно работать везде.
Вот другой пример. Если в адресную строку Проводника ввести %localappdata% и нажать Enter , то произойдет переход в папку, которую установленные программы используют для хранения своих локальных данных. Обычно это C:\Users\имя текущей учетной записи\AppData\Local в которую можно конечно перейти обычным способом, но учитывая, что AppData является скрытой, то данный способ может оказаться быстрее и проще. К тому же можно создавать собственные переменные среды на нужные папки.
Так же благодаря переменной path можно запускать программы без указания полных путей к исполняем файлам, что заметно упрощает использование компьютера.
Переменные среды Windows бывают нескольких видов:
- Системные переменные — работают в пределах всего компьютера, хранятся в реестре в разделе HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
- Пользовательские переменные — действуют только для конкретной учетной записи и находятся в реестре по адресу HKCU\Environment
- Сессионные переменные — существуют только в пределах текущего сеанса окна командной строки.
Настройка переменных среды Windows
В операционной системе имеется заранее предопределенный набор переменных окружения Windows и можно создавать собственные. Для просмотра и управления ими можно воспользоваться графическим интерфейсом. В разных версиях Windows вид окон немного отличается, но принципиально все одинаково. Правда в Windows 10 управление реализовано более удобно, чем в 7 и более старых версиях.
Настройка переменных среды Windows в графическом интерфейсе
Чтобы иметь возможность просматривать и редактировать переменные окружения в Windows 10 нужно выполнить следующие действия.
Щелкнуть правой кнопкой мыши по иконке «Этот компьютер» на рабочем столе и выбрать в меню «Свойства» или набрать в поиске на панели задач «Панель управления». Затем в левом столбце нажать на «Дополнительные параметры системы». В новом окне на вкладке «Дополнительно» есть кнопка «Переменные среды». Альтернативный вариант нажать комбинацию клавиш WIN + R и ввести systempropertiesadvanced .
Окно управления состоит из двух частей. В верхней представлены пользовательские переменные, а в нижней системные. Здесь можно просмотреть существующие, а также отредактировать, удалить или создать новые воспользовавшись соответствующими кнопками.
Чтобы создать переменную окружения нажимаем кнопку «Создать» в нужной части окна и вводим ее имя, значение и затем OK. Можно воспользоваться кнопкой «Обзор каталога» чтобы не вводить путь до нужной папки вручную.
Настройка переменных окружения Windows в командной строке
Конечно, есть альтернативный вариант настройки переменных окружения с помощью командной строки Windows. Чтобы cmd правильно понял, о чем идет речь ее нужно обернуть в символы процента вот так, %имя_переменной%. Соответственно, чтобы вывести на экран значение переменной среды команда будет такой: echo %имя_переменной% .
В Windows есть специальные команды, предназначенные для создания и редактирования переменных. Это set и setx принципиальная разница между которыми в том, что первая управляет ими только в текущем окне командной строки, а вторая изменяет их «навсегда» поскольку изменения сохраняются в реестре.
Для просмотра всех существующих переменных и их значений введите set без параметров.
Тут есть важный момент, который нужно понять, переменные среды считываются в момент запуска программы. Поэтому изменения, сделанные в графическом интерфейсе или командой setx не действуют на уже запущенные программы. Их придется закрыть и запустить снова. В то же время команда set влияет только на текущее окно или дочерние процессы.
Чтобы создать пользовательскую переменную среды или отредактировать существующую общий вид команды следующий setx имя значение , использовать кавычки при наличии пробелов. Если переменной с таким именем не существует, то она будет создана, в противном случае значение будет изменено на новое. Для управления системными переменными нужно дополнить команду ключом /m и командная строка должна быть запущена с правами администратора компьютера setx mypc T-800 /m .
Впрочем, у setx имеется недостаток, с ее помощью нельзя удалить существующую переменную, максимум можно присвоить ей пустое значение setx mypc «» . Хотя при этом она как бы не существует для cmd, но фактически она продолжает оставаться в реестре. Полноценное удаление возможно непосредственно в реестре или с помощью команд, обеспечивающих работу с ним, а также в графическом интерфейсе.
Для работы с сеансовыми переменными используется команда set. Синтаксис несколько отличается set имя=значение . Здесь уже используется знак равенства вместо пробела, при этом не допускается его наличие в имени. Таким образом изменить переменную окружения с именем temp в текущем окне CMD можно командой: set temp=D:\Archive\Garbage .
Использование переменных среды Windows сильно упрощает и ускоряет использование компьютера опытными пользователями. Каким способом их использовать каждый решает самостоятельно.