В среде Windows Server повсюду - в командной строке, скриптах, и т.д. можно использовать переменные среды окружения, которые дают дополнительную степень свободы, так как позволяют не привязываться к абсолютным значениям, заменяя их переменными конкретной системы. Но, как показала практика, многие пользователи плохо ориентируются в Environment Variables. Данная таблица призвана стать подсказкой в повседневной работе с переменными среды окружения Windows Server.
Перечень Environment Variables
%ALLUSERSPROFILE% | \Documents and Settings\All Users |
%APPDATA% | \Documents and Settings\{username}\Application Data |
%CD% | Возвращает путь к текущей папке |
%CMDCMDLINE% | Возвращает строку команд, с помощью которой был запущен данный экземпляр Cmd.exe |
%CMDEXTVERSION% | Возвращает номер версии текущих расширений обработчика команд |
%COMPUTERNAME% | {computername} |
%COMSPEC% | \Windows\System32\cmd.exe |
%DATE% | Возвращает текущие данные. Использует тот же формат, что и команда date /t. Создается командой Cmd.exe |
%ERRORLEVEL% | Возвращает код ошибки последней использовавшейся команды. Значение, не равное нуля, обычно указывает на наличие ошибки |
%HOMEDRIVE% | Диск с основным каталогом пользователя. Указывается в оснастке «Локальные пользователи и группы» |
%HOMEPATH% | \Documents and Settings\{username} Указывается в оснастке «Локальные пользователи и группы» |
%HOMESHARE% | Сетевой путь к общему основному каталогу пользователя. Указывается в оснастке «Локальные пользователи и группы» |
%LOGONSERVER% | Возвращает имя контроллера домена, который проверял подлинность текущей сессии |
%NUMBER_OF_PROCESSORS% | Задает количество процессоров, установленных на компьютере |
%OS% | Возвращает имя операционной системы. |
%PATH% | C:\Windows\System32\,C:\Windows\,C:\Windows\System32\Wbem |
%PATHEXT% | Возвращает список расширений файлов, которые рассматриваются операционной системой как исполняемые |
%PATHEXT% | .COM, .EXE, .BAT, .CMD, .VBS, .VBE, .JS , .WSF: .WSH (список исполняемых файлов) |
%PROCESSOR_ARCHITECTURE% | Возвращает архитектуру процессора. Значения: x86, IA64 |
%PROCESSOR_IDENTFIER% | Возвращает описание процессора |
%PROCESSOR_LEVEL% | Возвращает номер модели процессора, установленного на компьютере |
%PROCESSOR_REVISION% | Возвращает номер модификации процессора |
%PROGRAMFILES% | \Program Files |
%PROMPT% | Возвращает параметры командной строки для текущего интерпретатора Cmd.exe (обычно $P$G) |
%RANDOM% | Возвращает произвольное десятичное число от 0 до 32767. Создается командой Cmd.exe |
%SYSTEMDRIVE% | Возвращает имя диска, содержащего корневой каталог Windows (т. е. системный каталог) |
%SYSTEMROOT% | \Windows |
%SYSTEMROOT% | System returns the location of the Windows root directory. |
%TEMP% and %TMP% | :\DOCUME~1\{username}\LOCALS~1\Temp |
%TIME% | Возвращает текущее время. Использует тот же формат, что и команда time /t. Создается командой Cmd.exe |
%USERDOMAIN% | Возвращает имя домена, содержащего список учетных записей пользователей |
%USERNAME% | {username} |
%USERPROFILE% | \Documents and Settings\{username} |
%USERPROFILE%\Application Data | AppData |
%USERPROFILE%\Cookies | Cookies |
%USERPROFILE%\Desktop | Desktop |
%USERPROFILE%\Favorites | Favorites |
%USERPROFILE%\Local Settings | Local Settings |
%USERPROFILE%\Local Settings\Application Data | Local AppData |
%USERPROFILE%\Local Settings\History | History |
%USERPROFILE%\Local Settings\Temporary Internet Files | Cache |
%USERPROFILE%\My Documents | Мои документы |
%USERPROFILE%\My Documents\My Music | My Music |
%USERPROFILE%\My Documents\My Pictures | My Pictures |
%USERPROFILE%\NetHood | Nethood |
%USERPROFILE%\PrintHood | PrintHood |
%USERPROFILE%\SendTo | SendTo |
%USERPROFILE%\Start Menu | Start Menu |
%USERPROFILE%\Start Menu\Programs | Programs |
%USERPROFILE%\Start Menu\Programs\Startup | Startup |
%USERPROFILE%\Templates | Templates |
%WINDIR% | \Windows |
Кроме того, существуют псевдопеременные в среде популярного файлового менеджера Total Commander:
Имя | Описание | Пример |
---|---|---|
%$APPDATA% | Application Data | C:\Documents and Settings\MAIN\Application Data |
%$DESKTOP% | Рабочий стол | C:\Documents and Settings\MAIN\Рабочий стол |
%$PERSONAL% | Мои документы | C:\Documents and Settings\MAIN\Мои документы |
%$PROGRAMS% | Главное меню\Программы | С:\Documents and Settings\MAIN\Главное меню\Программы |
%$STARTMENU% | Главное меню | С:\Documents and Settings\MAIN\Главное меню |
%$STARTUP% | С:\Documents and Settings\MAIN\Главное меню\Программы\Автозагрузка | |
%$MYPICTURES% | Мои рисунки | С:\Documents and Settings\MAIN\Мои документы\Мои рисунки |
%$MYMUSIC% | Моя музыка | С:\Documents and Settings\MAIN\Мои документы\Моя музыка |
%$MYVIDEO% | Мое видео | С:\Documents and Settings\MAIN\Мои документы\Мое видео |
%$LOCAL_APPDATA% | Local Settings\Application Data | С:\Documents and Settings\MAIN\Local Settings\Application Data |
%$FONTS% | Шрифты | С:\WINDOWS\Fonts |
Переменные среды, используемые в пакетных (командных) файлах, позволяют обходиться без указания абсолютных путей к директориям. Например, если нам заранее неизвестна буква системного диска, мы всегда можем использовать переменную %systemdrive% , возвращающую букву диска, на котором установлена ОС. Также, переменные применяются для оптимизации кода - многократно повторяющемуся параметру (например, разделе реестра) можно назначить короткую переменную и использовать ее. В данной статье подробно рассматриваются различные приемы работы с переменными, а также способы изменения и создания новых переменных. Теперь обо всем по порядку.
Командная оболочка Windows (cmd.exe) - это весьма мощный инструмент работы с системой. При помощи пакетных файлов можно автоматизировать изрядное количество задач, и именно поэтому они часто используются для автоматической установки Windows. Умелое использование переменных в пакетных файлах позволяет решать широкий спектр вопросов. Работа с командной оболочкой становится более эффективной и одновременно упрощается код пакетных файлов. Другие примеры использования переменных вы можете найти на страницах сайта или форума. Все примеры, использованные в этой статье, взяты из скриптов участников , за что им большое спасибо.
Командная оболочка — это отдельный программный продукт, который обеспечивает прямую связь между пользователем и операционной системой. Текстовый пользовательский интерфейс командной строки предоставляет среду, в которой выполняются приложения и служебные программы с текстовым интерфейсом.
cmd.exe - интерпретатор команд, который командная оболочка ОС Windows использует для перевода введенной команды в формат, понятный системе.
Командная сессия может инициироваться как запуском cmd.exe , так и запуском пакетного файла. Иными словами создается текущая командная оболочка. Соответственно выход из этой оболочки (к примеру, окончание работы пакетного файла) завершает командную сессию.
Пользовательский сеанс (пользовательская сессия) начинается с момента входа пользователя в систему (log on) и завершается при выходе (log off).
Если файл.USERPROFILE известен Вашей системе, то открыть его можно двойным нажатием мышкой или клавишей ENTER. Эта операция запустит ассоциируемые с файлом.USERPROFILE аппликации, установленные в системе. Если система встречает файл впервые и отсутствуют соответствующие ассоциации, то акция закончится предложением системы, найти соответствующее программное обеспечение в компьютере либо сети интернет.
Иногда случается, что для обслуживания типа файлов.USERPROFILE приписана неправильная программа. Это случается в следствии действия враждебных программ, таких как вирусы или вредоносные программы, но чаще всего это результат ошибочного совмещения аппликации с расширением файла.USERPROFILE. Если во время обслуживания нового типа файлов.USERPROFILE мы укажем системе неправильную программу, то система ошибочно будет рекомендовать ее использование всякий раз, когда будет встречаться файл этого типа. В таком случае следует попробовать повторно выбрать соответствующую аппликацию. Нажмите правой кнопкой мышки на файл.USERPROFILE, а затем выберите из меню опцию "Открыть с помощью..." затем "Выбрать программу по умолчанию" . Сейчас выберите одну из установленных аппликаций из вышеуказанного списка и попробуйте снова.
Программы, которые откроют файл.USERPROFILE
Если наша система не справляется с расширением.USERPROFILE и подвели все автоматические и полуавтоматические методы обучения его этому искусству, остается ручное редактирование реестра Windows. Этот реестр хранит всю информацию, касающуюся рабоы нашей операционной системы, в том числе соединения расширений файлов с программами для их обслуживания. Команда REGEDIT вписанная в окне „поиск программ и файлов” или „запустить в случае старших версий операционной системы, предоставляет нам доступ к реестру нашей операционной системы. Все операции, проведенные в реестре (даже не очень сложные, касающееся расширения файла.USERPROFILE) имеют значительное влияние на работу нашей системы, поэтому прежде чем проводить какие-либо модификации следует убедится, что сделана копия актуального реестра. Интересующий нас раздел - это ключ HKEY_CLASSES_ROOT . Следующая инструкция показывает, шаг за шагом, как модифицировать реестр, а конкретно запись в реестре, содержащую информацию о файле.USERPROFILE.