Переменные среды
Переменные среды, используемые в пакетных (командных) файлах, позволяют обходиться без указания абсолютных путей к директориям. Например, если нам заранее неизвестна буква системного диска, мы всегда можем использовать переменную %systemdrive%, возвращающую букву диска на котором установлена ОС. Также, переменные применяются для оптимизации кода - многократно повторяющемуся параметру (например, ветке реестра) можно назначить короткую переменную, и использовать ее. В данной статье подробно рассматриваются различные приемы работы с переменными, а также способы изменения и создания новых переменных. Теперь обо всем по порядку.
Классификация переменных среды
Справка Windows различает два типа переменных среды: системные и локальные. Системные переменные возвращают одинаковые значения для всех пользователей. К примеру, %systemdrive% - буква системного диска, и она для всех пользователей одинакова. А вот значения, возвращаемые локальными переменными, варьируются в зависимости от вошедшего в систему пользователя. Например, %userprofile% может возвращать C:\Documents and Settings\ТекущийПользователь, где ТекущийПользователь - название учетной записи пользователя.
Узнать, какие переменные среды в операционной системе вам доступны и какие значения в данный момент им присвоены, вам поможет команда SET запущенная из командной строки без параметров (Пуск – Выполнить – cmd – set). В рамках данной статьи нас интересуют переменные обозначающие путь к различным папкам (каталогам). Чуть подробнее о некоторых из них ниже:
Переменная |
Тип |
Описание |
%SYSTEMDRIVE% |
Системная |
Возвращает имя диска, содержащего корневой каталог операционной системы Windows XP/2003 (т. е. системный корневой каталог). |
%SYSTEMROOT%, %WINDIR% |
Системная |
Возвращает размещение корневого каталога операционной системы Windows XP/2003 |
%PATH% |
Системная |
Указывает путь поиска для исполняемых файлов. |
%PROGRAMFILES% |
Системная |
Указывает путь к каталогу установки программ (Program Files) |
%COMMONPROGRAMFILES% |
Системная |
Указывает путь к общему каталогу программ (Program Files\Common Files). |
%TEMP% и %TMP% |
Системная и пользовательская |
Возвращает временные папки, по умолчанию используемые приложениями, которые доступны пользователям, выполнившим вход в систему. Некоторые приложения требуют переменную TEMP, другие — переменную TMP. |
%USERPROFILE% |
Локальная |
Возвращает размещение профиля для текущего пользователя. |
%ALLUSERSPROFILE% |
Локальная |
Возвращает размещение профиля "All Users". |
%CD% |
Локальная |
Возвращает путь к текущей папке. |
%APPDATA% |
Локальная |
Возвращает используемое по умолчанию размещение данных приложений. |