Environment Variables — Переменные среды окружения. Переменные средЫ Windows - TEMP и TMP Классификация переменных среды

💖 Нравится? Поделись с друзьями ссылкой

Переменные среды, используемые в пакетных (командных) файлах, позволяют обходиться без указания абсолютных путей к директориям. Например, если нам заранее неизвестна буква системного диска, мы всегда можем использовать переменную %systemdrive% , возвращающую букву диска, на котором установлена ОС. Также, переменные применяются для оптимизации кода - многократно повторяющемуся параметру (например, разделе реестра) можно назначить короткую переменную и использовать ее. В данной статье подробно рассматриваются различные приемы работы с переменными, а также способы изменения и создания новых переменных. Теперь обо всем по порядку.

Классификация переменных среды

Резюме

Командная оболочка Windows (cmd.exe) - это весьма мощный инструмент работы с системой. При помощи пакетных файлов можно автоматизировать изрядное количество задач, и именно поэтому они часто используются для автоматической установки Windows. Умелое использование переменных в пакетных файлах позволяет решать широкий спектр вопросов. Работа с командной оболочкой становится более эффективной и одновременно упрощается код пакетных файлов. Другие примеры использования переменных вы можете найти на страницах сайта или форума. Все примеры, использованные в этой статье, взяты из скриптов участников , за что им большое спасибо.

Терминология

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

cmd.exe - интерпретатор команд, который командная оболочка ОС Windows использует для перевода введенной команды в формат, понятный системе.

Командная сессия может инициироваться как запуском cmd.exe , так и запуском пакетного файла. Иными словами создается текущая командная оболочка. Соответственно выход из этой оболочки (к примеру, окончание работы пакетного файла) завершает командную сессию.

Пользовательский сеанс (пользовательская сессия) начинается с момента входа пользователя в систему (log on) и завершается при выходе (log off).

Переменные среды Windows - ударение на "Ы" во втором слове (смысл фразы заложен в родительном падеже и верном ударении: переменные чего? - среды!), в англоязычных версиях виндовс - environment variable )

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



По умолчанию значение пользовательских временных (TEMP) переменных – %USERPROFILE%\Local Settings\Temp ,

По умолчанию значение системных временных переменных – \WINDOWS\Temp .

Поэтому в первом случае это обычно: "C:\Documents and Settings\USER\Local Settings\Temp "

Недорогой производительный Ультрабук:

Характеристики: экран 14,1 дюймов 1920*1080 ips, Windows 10, 8 ГБ ОЗУ, 256 ГБ M.2 SATA 2280 SSD, Wifi, подсветка клавиатуры.

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

Для удобства удаления лучше изменить путь по умолчанию на более простой, самый оптимальный вариант - "C:\Temp ".

Как изменить Переменные среды Windows TEMP и TMP? - Очень просто:

1. Правый клик на значке "Мой компьютер " на рабочем столе (если это полноценный значок, а не ярлык) или через меню Пуск -> Мой компьютер - > Свойства :

2. Перейти на вкладку "Дополнительно " и кликнуть внизу на кнопку "Переменные среды ":

3. В верхнем окне "Переменные среды пользователя " выбрать сначала первую строку (переменную TEMP) и нажать кнопку "Изменить ":



4. Исправить значение переменной на более простое - "C:\Temp ":

5. Повторить пункты 3 и 4 для переменной TMP :

В итоге должно получиться:

6. Нажать поочередно 2 раза "ОК ".



В принципе тоже самое можно сделать с помощью командной строки, выполнив команду: SET TEMP=C:\TEMP

Все переменные среды 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 Указывает путь к каталогу операционной системы (системная переменная)



Чтобы получить доступ к значению переменной, необходимо поставить знак % перед её названием и после него, например: echo %NUMBER_OF_PROCESSORS %

Если файл.USERPROFILE известен Вашей системе, то открыть его можно двойным нажатием мышкой или клавишей ENTER. Эта операция запустит ассоциируемые с файлом.USERPROFILE аппликации, установленные в системе. Если система встречает файл впервые и отсутствуют соответствующие ассоциации, то акция закончится предложением системы, найти соответствующее программное обеспечение в компьютере либо сети интернет.

Иногда случается, что для обслуживания типа файлов.USERPROFILE приписана неправильная программа. Это случается в следствии действия враждебных программ, таких как вирусы или вредоносные программы, но чаще всего это результат ошибочного совмещения аппликации с расширением файла.USERPROFILE. Если во время обслуживания нового типа файлов.USERPROFILE мы укажем системе неправильную программу, то система ошибочно будет рекомендовать ее использование всякий раз, когда будет встречаться файл этого типа. В таком случае следует попробовать повторно выбрать соответствующую аппликацию. Нажмите правой кнопкой мышки на файл.USERPROFILE, а затем выберите из меню опцию "Открыть с помощью..." затем "Выбрать программу по умолчанию" . Сейчас выберите одну из установленных аппликаций из вышеуказанного списка и попробуйте снова.

Программы, которые откроют файл.USERPROFILE

Ручное редактирование Реестра Windows

Если наша система не справляется с расширением.USERPROFILE и подвели все автоматические и полуавтоматические методы обучения его этому искусству, остается ручное редактирование реестра Windows. Этот реестр хранит всю информацию, касающуюся рабоы нашей операционной системы, в том числе соединения расширений файлов с программами для их обслуживания. Команда REGEDIT вписанная в окне „поиск программ и файлов” или „запустить в случае старших версий операционной системы, предоставляет нам доступ к реестру нашей операционной системы. Все операции, проведенные в реестре (даже не очень сложные, касающееся расширения файла.USERPROFILE) имеют значительное влияние на работу нашей системы, поэтому прежде чем проводить какие-либо модификации следует убедится, что сделана копия актуального реестра. Интересующий нас раздел - это ключ HKEY_CLASSES_ROOT . Следующая инструкция показывает, шаг за шагом, как модифицировать реестр, а конкретно запись в реестре, содержащую информацию о файле.USERPROFILE.

Шаг за шагом

  • Нажмите кнопку “start”
  • В окне „найти программы и файлы” (в старших версиях системы Windows это окно „Запустить”) впишите команду „regedit” а затем утвердите операцию клавишей „ENTER”. Эта операция запустит системный редактор реестра. Этот инструмент позволит не только просмотреть существующие записи, но также провести их модификацию, добавление или удаление вручную. В связи с тем, что реестр системы Windows ключевой для ее работы, все операции, проводящиеся на ней, следует выполнять рассудительно и сознательно. Неосторожное устранение или модификация несоответственного ключа может необратимо повредить операционную систему.
  • С помощью комбинации клавишей ctr+F или меню Редактирование и опции „Найти” найдите интересующее вас расширение.USERPROFILE, вписав его в окне поисковика. Утвердите, нажав OK или с помощью клавиши ENTER.
  • Запасная копия. Чрезвычайно важным является создание запасной копии реестра, прежде чем совершить в нем какие-либо изменения. Каждое изменение имеет влияние на действие нашего компьютера. В крайних случаях ошибочная модификация реестра может привести к невозможности повторного запуска системы.
  • Интересующее Вас значение, касающееся расширения, можно вручную редактировать изменяя ключи, приписанные к найденному расширению.USERPROFILE. В этом месте Вы можете также самостоятельно создать нужную запись с расширением а.USERPROFILE если такое отсутствует в реестре. Все доступные варианты находятся в подручном меню (правая кнопка мышки) или в меню "Редактирование" после размещения курсора в соответствующем месте на экране.
  • После окончания редактирования записи, касающейся расширения.USERPROFILE закройте системный реестр. Введенные изменения войдут в жизнь после повторного запуска операционной системы.
Рассказать друзьям