+7 (4822) 75-00-45 +7 (920) 686-72-02

Использование переменных среды в Командной строке

Переменные среды в командной строкеПеременные устанавливают среду Cmd.exe. Они прописывают не только особенности поведения командной оболочки, но и самой ОС. Переменные следует подразделить на два вида, каждый из которых обладает уникальными свойствами: системные и локальные. Первый вид позволяет задать поведение глобальной среды ОС в процессе осуществления работы. Локальные переменные устанавливают деятельность среды исключительно в определенном экземпляре Cmd.exe. Это требуется отметить в качестве ключевого отличия.

Его говорить о системных переменных, то он предварительно заложены в ОС и могут быть использованы всеми приложениями. Чтобы внести в них изменения, необходимо обладать администраторскими правами доступа. Самым распространенным местом применения является обеспечение задачи запуска системы. Когда подобное мероприятие осуществлено для конкретного пользователя, можно говорить о возможности использования локальных переменных.

Ниже будет представлен перечень существующих классов переменных на основании важности их приоритета (по убыванию):

  • Встроенные системные. Их необходимо назвать наиболее серьёзными, что предусматривает особое внимание в процессе работы.
  • Переменные системного вида, относящиеся к HKEY_LOCAL_MACHINE.
  • Переменные локального вида, относящиеся к HKEY_CURRENT_USER.
  • Полный перечень переменных и сред, находящихся в документе Autoexec.bat.
  • Полный перечень переменных и сред, находящихся в сценарии начала работы системы. В определенных ситуациях его может и не быть.
  • Интерактивно применяемые переменные для прописанного сценария или пакетного документа.

Существует довольно продолжительный список переменных, относящихся к локальной или системной категории. Необходимо уделить подобному вопросу больше внимания.

Локальные переменные

Название Информация

%ALLUSERSPROFILE%

Предоставляет сведения о том, где именно находится профиль All Users

%APPDATA%

Предоставляет место нахождения программ, устанавливаемое по умолчанию

%CD%

Позволяет получить путь до используемой папки

%CMDCMDLINE%

Предоставляет строчку команд, с применением которой произведена работа текущего экземпляра Cmd.exe

%LOGONSEVER%

Предоставляет название контроллера домена, осуществляющего проверку подлинности заданной сессии

%PROMPT%

Позволяет выполнить предоставление параметров КА для действующего интерпретатора. Для получения доступа, необходимо воспользоваться Cmd.exe

%USERDOMAIN%

Предоставляет название домена, который обладает перечнем учетных записей юзеров

%USERNAME%

Предоставляет имя юзера, осуществившего вход в систему

%USERPROFILE%

Осуществляет возврат положения аккаунта для текущего юзера

Системные переменные

%CMDEXTVERSION%

Позволяет предоставить номер версии действующих расширений обработчика команд

%COMPUTERNAME%

Предоставляет название устройства, на котором производится работа

%COMSPEC%

Осуществляет выдачу пути к исполняемой командной оболочке

%DATE%

Предоставляет действующие сведения. Следует отметить тот факт, что предусматривается применение формата, аналогичного date /t. Все сведения об указанной команде можно получить непосредственно из соответствующего раздела на сайте

%ERRORLEVEL%

Используется для предоставления кода ошибки последней применяемой команды. Стандартная ситуация предусматривает наличие значения, которое является отличным от нулевого

%HOMEDRIVE%

Осуществляет предоставление названия диска рабочей станции, который связан с каталогом юзера. Требуется устанавливать с учетом нахождения главного каталога

%HOMEPATH%

Выполняет предоставление пути до главного каталога юзера. Следует устанавливать за счет сведений о нахождении главного каталога

%HOMESHARE%

Выполняет предоставление пути до общего главного каталога юзера. Следует устанавливать за счет сведений о нахождении главного каталога

%NUMBER_OF_PROCESSORS%

Определяет количество процессоров, которыми обладает конкретное устройство

%OS%

Передает информацию о том, каким именем обладает ОС на конкретном устройстве. Существуют определенные особенности отображения названия для некоторых типов ОС и это необходимо учитывать

%PATH%

Устанавливает путь поиска для того, чтобы обнаруживать программы

%PATHEXT%

Предоставляет перечень расширений документов, учитываемых ОС в качестве исполняемых

%PROCESSOR_ARCHITECTURE%

Используется в тех случаях, когда необходимо получить архитектуру определенного процессора

%PROCESSOR_IDENTFIER%

Предоставляет короткую информацию о процессоре

%PROCESSOR_LEVEL%

Предоставляет данные о номере модификации процессора

%RANDOM%

Предоставляет любое целое число в диапазоне 0-32767 включительно

%SYSTEMDRIVE%

Выполняет предоставление названия диска, на который записан корневой каталог ОС Windows XP

%SYSTEMROOT%

Предоставляет место расположения системного каталога ОС

%TEMP% и %TMP%

Данные переменные являются системной и пользовательской. Это позволяет осуществить исполнение одинаковых задач при различных ситуациях. Предоставляет временные папки, воспользоваться которыми могут все юзеры. Для определенных программ нужно использовать TEMP или TMP.

%TIME%

Предоставляет сведения о времени на данный момент. Применяется аналогичный time /t формат отображения.

%WINDIR%

Позволяет осуществить возврат каталога ОС

Задание переменных среды

Чтобы выполнить создание, удаление или демонстрацию переменной среды, следует применять специальную команду set. Отличительной особенностью необходимо отметить корректировку переменных исключительно в среде действующей оболочки.

Для выдачи конкретной переменной, предусматривается написание в КС:

set название_переменной

Добавление ещё одной переменной осуществляется за счет прописывания:

set variablename=значение

Для выполнения процедуры удаления, стоит прописывать строку:

set название_переменной=

Системой задаётся применение большинства существующих символов для указания в роли значений. Сюда же можно отнести и проделы. Чтобы применять определённые символы, предварительно требуется ввести (^) или осуществить заключение в кавычки. Если этого не сделать, возникнет вероятность неправильного исполнения или ошибки. Необходимо рассмотреть несколько простых примеров. Допустим, нужно создать переменную new&name. Для осуществления поставленной задачи в КС происходит ввод:

set varname=new^&name

Можете попытаться не использовать спецсимвол (^), но это будет невозможно осуществить. Причина заключается в постоянной выдаче одной и той же ошибки.

Когда устанавливается переменная, то не представляет значения, какие именно буквы используются – большие или малые. Регистр не будет приниматься во внимание. Есть одна отличительная особенность – переменная все-равно станет отображаться именно так, как она была введена. Это позволяет облегчить задачу восприятия, если выполнить применение различных регистров для разграничения при написании названий.

Подстановка в переменные среды

Существует способ выполнить подстановку определенных значений в переменные среды непосредственно из КС или сценария. Для проведения поставленной задачи рекомендуется использовать помещение в символы процента. Это выглядит следующим образом:

%название_переменной%

Предполагается обозначение того факта, что Cmd.exe обязан обращаться сразу к значениям конкретной переменной. Процедура посимвольного сравнения осуществляться не станет. Важно учитывать тот факт, что сама подстановка не считается рекурсивной. Проверка осуществляется исключительно единожды. 

Мы в соц. сетях: