Список переменных среды Windows
Название | Тип | Описание |
---|---|---|
ALLUSERSPROFILE | локальная | Возвращает размещение профиля "All Users". |
APPDATA | системная | Возвращает используемое по умолчанию размещение данных приложений. |
CD | системная | Указывает путь текущей папки. Идентична команде CD без аргументов. |
CMDCMDLINE | локальная | Точная команда использованная для запуска текущего cmd.exe. |
CMDEXTVERSION | системная | Версия текущего Command Processor Extensions. |
CommonProgramFiles | системная | Расположение каталога "Common Files" (обычно %ProgramFiles%\Common Files). |
COMPUTERNAME | системная | Имя компьютера. |
COMSPEC | системная | Путь до исполняемого файла shell. |
DATE | системная | Возвращает текущую дату. Использует тот же формат, что и команда date /t. Создается командой Cmd.exe. |
ERRORLEVEL | системная | Возвращает код ошибки последней использовавшейся команды. Значение, не равное нулю, обычно указывает на наличие ошибки. |
HOMEDRIVE | системная | Возвращает имя диска локальной рабочей станции, связанного с основным каталогом пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке "Локальные пользователи и группы". |
HOMEPATH | системная | Возвращает полный путь к основному каталогу пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке "Локальные пользователи и группы". |
HOMESHARE | системная | Возвращает сетевой путь к общему основному каталогу пользователя. Задается на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке "Локальные пользователи и группы". |
LOGONSERVER | локальная | Имя контроллера домена, использовавшегося для авторизации текущего пользователя. |
NUMBER_OF_PROCESSORS | системная | Количество процессоров в системе. |
OS | системная | Название операционной системы. Windows XP и Windows 2000 отображаются как Windows_NT. |
PATH | системная | Указывает путь поиска для исполняемых файлов. |
PATHEXT | системная | Возвращает список расширений файлов, которые рассматриваются операционной системой как исполняемые. |
PROCESSOR_ARCHITECTURE | системная | Архитектура процессора. Возможные варианты: x86, IA64. |
PROCESSOR_IDENTIFIER | системная | Описание процессора. |
PROCESSOR_LEVEL | системная | Номер модели процессора. |
PROCESSOR_REVISION | системная | Ревизия процессора. |
PROGRAMFILES | системная | Путь к папке Program Files. |
PROMPT | локальная | Возвращает параметры командной строки для текущего интерпретатора. Создается командой cmd.exe. |
RANDOM | системная | Случайное десятичное число от 0 до 32767. Генерируется cmd.exe. |
SESSIONNAME | системная | Значение по умолчанию "Console". |
SYSTEMDRIVE | системная | Диск, на котором расположена корневая папка Windows. |
SYSTEMROOT | системная | Путь к корневой папке Windows. |
TEMP or TMP | системная и локальная | Возвращает временные папки, по умолчанию используемые приложениями, которые доступны пользователям, выполнившим вход в систему. Некоторые приложения требуют переменную TEMP, другие — переменную TMP. Потенциально TEMP и TMP могут указывать на разные каталоги, но обычно - совпадают. |
TIME | системная | Возвращает текущее время. Использует тот же формат, что и команда time /t. Создается командой cmd.exe. |
USERDOMAIN | локальная | Имя домена, которому принадлежит текущий пользователь. |
USERNAME | локальная | Имя текущего пользователя. |
USERPROFILE | локальная | Путь к профайлу текущего пользователя. |
WINDIR | системная | Директория в которую установлена Windows. |
Работа с переменными
Чтобы получить доступ к значению переменной, необходимо поставить знак % перед и после ее названия, например:
echo %PROCESSOR_REVISION%
Чтобы установить значение переменной:
SET TEMP=C:\TEMP
Кроме того, с переменными средами можно работать, нажав кнопку "Переменные среды" на вкладке "Дополнительно" в диалоговом окне "Свойства системы" (контекстное меню значка "Мой компьютер" > пункт "Свойства").
Для просмотра переменных среды в командной строке, выполните команду:
SET
Так же необходимо помнить, что в отличие от UNIX-систем, в DOS и стандартной командной строке Windows, переменные среды не наследуются запускаемыми процессами, а используются совместно. Это позволяет, например, возвращать через них результаты работы программ, но с другой стороны создаёт возможность порчи или переполнения. Особенно актуально переполнение для переменной PATH, потому как она часто дополняется при работе различных скриптов. При возникновении такого переполнения достаточно просто перезапустить интерпретатор командной строки. Интерпретаторы, портированные из UNIX-систем (например, Z-shell) такой проблеме не подвержены.