Переменные среды Windows.
Переменные среды Windows.
Добрый день уважаемые читатели и гости блога, сегодня я с вами хочу обсудить вот такую тему, что такое переменные среды Windows, где их можно использовать, как в обычной практике пользователя, так и в практике системного администратора, я вам приведу несколько примеров. Как все это дело настраивается и изменяется под ваши нужны, на мой взгляд это фундаментальные знания, понимание которых вам лучше покажет принцип работы операционных систем семейства Windows.
Что такое переменные среды windows
Давайте разберемся в понятии, и так переменная окружения ( environment variable ) это специального рода ссылки уменьшенного размера, на определенные объекты операционной системы Windows, используемые разными программами для хранения информации и взаимодействия с ней. Можно провести аналогию с относительными ссылками на сайтах, где нет явного указания на протокол. Чаще всего это пути до конкретных директорий в ОС.
Где используют переменные среды Windows
Приведу несколько примеров:
- В скриптах > когда нужно например каждому пользователю сделать какую-то настройку, для примера положить на рабочий стол новую папку с документами. Так как для каждого пользователя путь до рабочего стола свой, вида C:\Users\lacky\Desktop, а можно обратиться и по относительному пути за счет переменной %HOMEPATH%, если вы в проводнике введете %HOMEPATH%\Desktop, то попадете на рабочий стол текущего пользователя.
- в групповой политике, для настройки пользовательских окружений, например перемещаемые профили.
- Оптимизация кода > если в коде очень часто используются одни и те же пути к файлам или папкам, а так же ключам реестра, вы можете легко назначить короткую переменную для дальнейшего использования. Ниже я вам приведу сводный список по переменным средам windows 10 и предыдущих версий, а так же покажу как их создавать и менять.
Список переменных сред windows 10
Приведенный список, в полной мере подойдет и для Windows 7 и для Windows 8.1, все проверенно лично. Уверен, что данные знания, очень сильно вам помогут оптимизировать свою работу.
- %ALLUSERSPROFILE% > данная переменная отправит вас в папку C:\ProgramData
- %windir% > это папка C:\Windows
- %APPDATA% > вы попадается в скрытую папку C:\Users\Имя_пользователя\AppData\Roaming
- %CommonProgramFiles% > папка C:\Program Files\Common Files
- %CommonProgramFiles(x86)% > перекинет вас в C:\Program Files (x86)\Common Files
- %CommonProgramW6432% > перекинет вас C:\Program Files\Common Files
- %COMPUTERNAME% > Имя_компьютера, используется скриптах
- %ComSpec% >откроет командную строку Windows 10 C:\Windows\system32\cmd.exe
- %HOMEDRIVE% > путь к диску C:
- %HOMEPATH% > эта переменная среды windows перекинет вас в папку пользователя \Users\Имя_пользователя
- %LOCALAPPDATA% > эта переменная среды windows перекинет вас в папку C:\Users\Имя_пользователя\AppData\Local
- %LOGONSERVER% > Имя_компьютера
- %NUMBER_OF_PROCESSORS% > Количество_процессоров
- %OS% > Windows_NT, так же используется в скриптах
- %Path% > C:\Windows\system32;C:\Windows;C:\Windows\System32Wbem;
- %PATHEXT% .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
- %PROCESSOR_ARCHITECTURE% > x86 или AMD64, архитектура Windows
- %PROCESSOR_IDENTIFIER% > Intel64 Family 6 Model 37 Stepping 5, GenuineIntel
- %PROCESSOR_LEVEL% > 6
- %PROCESSOR_REVISION% > 2505 (пример)
- %ProgramData% > папка C:\ProgramData
- %ProgramFiles% > C:\Program Files
- %ProgramFiles(x86)% > папка C:\Program Files (x86)
- %ProgramW6432% > C:\Program Files
- %PROMPT% > $P$G
- %PSModulePath% > C:\Windows\system32\WindowsPowerShell\v1.0\Modules\ согласитесь очеь быстро
- %PUBLIC% > C:\Users\Public
- %SystemDrive% > диск C:
- %SystemRoot% > C:\Windows
- %TEMP% > C:\Users\Имя_пользователя\AppData\Local\Temp (по умолчанию)
- %TMP% > C:\Users\Имя_пользователя\AppData\Local\Temp (по умолчанию)
- %USERDOMAIN% > Имя_компьютера
- %USERDOMAIN_ROAMINGPROFILE% > Имя_компьютера
- %USERNAME% > Имя_пользователя
- %USERPROFILE% > C:\Users\Имя_пользователя
Как вывести список всех переменных Windows
В Windows 10 и других версиях, можно вывести список всех переменных сред Windows, для этого откройте командную строку от имени администратора и введите команду SET. В результате вы получите все переменные среды windows 10 по умолчанию для конкретной операционной системы.
Для удобства вы можете экспортировать весь этот список в текстовый файл, для этого введите:
Энциклопедия Windows
Все об использовании и настройке Windows
Список переменных среды в Windows
Переменные среды (environment variables) являются очень полезными инструментами для сбора информации об установленной операционной системе. Далее приводится полный список переменных среды Windows.
Переменные среды Windows
| ALLUSERSPROFILE | Указывает расположение профиля All Users (локальная переменная) |
| APPDATA | Указывает расположение каталога, в котором программы хранят данные по умолчанию (локальная переменная) |
| CD | Указывает имя текущего каталога (локальная переменная) |
| CMDCMDLINE | Указывает параметры командной строки, которые использовались для запуска текущего экземпляра программы CMD.EXE (локальная переменная) |
| CMDEXTVERSION | Указывает номер версии текущего расширения командного процессора (системная переменная) |
| COMPUTERNAME | Указывает имя компьютера (системная переменная) |
| COMSPEC | Указывает точный путь к исполняемому файлу командного интерпретатора (системная переменная) |
| DATE | Указывает текущую дату. Используется тот же формат, что и для команды date /t. Значение генерируется командным интерпретатором (системная переменная) |
| ERRORLEVEL | Указывает код уровня ошибки последней программы. Ненулевое значение, скорее всего, указывает на ошибку (системная переменная) |
| HOMEDRIVE | Указывает букву диска локальной рабочей станции, подключенной к домашнему каталогу. Переменная определяется на основе пути к домашнему каталогу. Домашний каталог пользователя определяется в оснастке Локальные пользователи и группы (Local Users and Groups) (системная переменная) |
| HOMEPATH | Указывает полный путь к домашнему каталогу пользователя. Переменная определяется на основе пути к домашнему каталогу. Домашний каталог пользователя определяется в оснастке Локальные пользователи и группы (Local Users and Groups) (системная переменная) |
| HOMESHARE | Указывает сетевой путь к общему домашнему каталогу пользователя. Переменная определяется на основе пути к домашнему каталогу. Домашний каталог пользователя назначается в оснастке Локальные пользователи и группы (Local Users and Groups) (системная переменная) |
| LOGONSERVER | Указывает имя контроллера домена, на котором авторизован текущий сеанс работы с системой (локальная переменная) |
| NUMBER_OF_PROCESSORS | Указывает количество процессоров, установленных в компьютере (системная переменная) |
| OS | Указывает версию операционной системы. ОС Windows XP/XP обозначаются, как Windows_NT (системная переменная) |
| PATH | Указывает путь поиска исполняемых файлов (системная переменная) |
| PATHEXT | Указывает список расширений, которые распознаются операционной системой, как расширения исполняемых файлов (системная переменная) |
| PROCESSOR_ARCHITECTURE | Указывает тип архитектуры процессора. Возможные значения: x86 и IA64 (системная переменная) |
| PROCESSOR_IDENTIFIER | Указывает описание процессора (системная переменная) |
| 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 | Указывает путь к каталогу операционной системы (системная переменная) |
Для получения доступа к описанным переменным среды необходимо разместить символ процента (%) перед именем переменной и после него. Например, следующая команда указывает тип процессора, установленного в системе.
Какие переменные Windows существуют?
В современных ОС компании Microsoft на платформе NT для получения информации о системе используются следующие переменные (Полужирным выделен текст, относящийся только к Windows Vista/7):
| Название | Тип | Описание |
|---|---|---|
| ALLUSERSPROFILE | локальная | Возвращает размещение профиля «All Users». В Windows 7 возвращает путь к папке C:\ProgramData\. |
| APPDATA | системная | Возвращает используемое по умолчанию размещение данных приложений. В Windows XP это C:\Documents and Settings\%UserName%\Application Data. В Windows 7 — C:\Users\%UserName%\AppData\Roaming. |
| CD | локальная | Указывает путь к текущему каталогу. Идентична команде CD без аргументов. |
| CLIENTNAME | локальная динамическая | Переменная определена только в среде удаленного подключения к рабочему столу. Хранит имя компьютера (%COMPUTERNAME%) клиента удаленного доступа. |
| CMDCMDLINE | локальная | Точная команда, использованная для запуска текущего cmd.exe. |
| CMDEXTVERSION | системная | Версия текущего Command Processor Extensions. |
| COMMONPROGRAMFILES | системная | Расположение каталога «Common Files» (обычно %ProgramFiles%\Common Files). |
| COMMONPROGRAMFILES(x86) | системная | Расположение каталога «Common Files» в Program Files (x86) для 64-разрядной ОС (обычно %ProgramFiles(x86)%\Common Files). |
| COMPUTERNAME | системная | Имя компьютера |
| COMSPEC | системная | Путь к исполняемому файлу командного процессора (shell). |
| DATE | системная | Возвращает текущую дату. Использует тот же формат, что и команда date /t. Создаётся командой Cmd.exe. |
| ERRORLEVEL | системная | Возвращает код ошибки последней использовавшейся команды. Значение, не равное нулю, обычно указывает на наличие ошибки. |
| HOMEDRIVE | системная | Возвращает имя диска локальной рабочей станции, связанного с основным каталогом пользователя. Задаётся на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы». |
| HOMEPATH | системная | Возвращает полный путь к основному каталогу пользователя. Задаётся на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы». |
| HOMESHARE | системная | Возвращает сетевой путь к обще му основному каталогу пользователя. Задаётся на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы». |
| LOCALAPPDATA | системная | Возвращает используемое по умолчанию локальное размещение данных приложений (C:\Users\%UserName%\AppData\Local). |
| LOGONSERVER | локальная | Имя контроллера домена, использовавшегося для авторизации текущего пользователя. |
| NUMBER_OF_PROCESSORS | системная | Количество процессоров в системе (фактически, количество ядер). |
| OS | системная | Название операционной системы. Windows XP и Windows 2000 отображаются как Windows_NT. |
| PATH | системная | Указывает путь поиска исполняемых файлов. |
| PATHEXT | системная | Возвращает список расширений файлов, которые рассматриваются операционной системой как исполняемые. |
| PROCESSOR_ARCHITECTURE | системная | Архитектура процессора. Возможные варианты: x86, IA64, AMD64. |
| PROCESSOR_IDENTIFIER | системная | Описание процессора (в Интернете часто встречается ошибочное написание PROCESSOR_IDENTFIER — пропущена буква). |
| PROCESSOR_LEVEL | системная | Номер модели процессора. |
| PROCESSOR_REVISION | системная | Ревизия процессора. |
| PROGRAMDATA | системная | Возвращает путь к каталогу C:\ProgramData\ (аналогично ALLUSERSPROFILE). |
| PROGRAMFILES | системная | Путь к каталогу Program Files. |
| PROGRAMFILES(x86) | системная | Путь к каталогу Progra m Files (x86) в 64-разрядных системах для приложений архитектуры x86. |
| PROMPT | локальная | Возвращает параметры командной строки для текущего интерпретатора. Создаётся командой Cmd.exe. |
| PUBLIC | системная | В Windows 7 возвращает путь к каталогу C:\Users\Public. |
| RANDOM | системная | Случайное десятичное число от 0 до 32767. Генерируется Cmd.exe. |
| SESSIONNAME | локальная | Хранит имя активного пользовательского сеанса. При локальном входе имеет значение «Console», при удаленном доступе имеет вид RDP-Tcp# |
| SYSTEMDRIVE | системная | Диск, на котором расположен корневой каталог Windows. |
| SYSTEMROOT | системная | Путь к корневому каталогу Windows. |
| TEMP и TMP | системная и локальная | Возвращает временные каталоги, по умолчанию используемые приложениями, которые доступны пользователям, выполнившим вход в систему. Некоторые приложения требуют переменную TEMP, другие — переменную TMP. Потенциально TEMP и TMP могут указывать на разные каталоги, но обычно совпадают. |
| TIME | системная | Возвращает текущее время. Использует тот же формат, что и команда time /t. Создаётся командой Cmd.exe. Дополнительные сведения о команде time см. в разделе Time. |
| USERDOMAIN | локальная | Имя домена, которому принадлежит текущий пользователь. |
| USERNAME | локальная | Имя текущего пользователя. |
| USERPROFILE | локальная | Путь к профилю текущего пользователя. |
| WINDIR | системная | Каталог, в котором установлена Windows. |
Вы можете задать вопрос по статье специалисту.




