Переменные средЫ Windows - TEMP и TMP. Environment Variables — Переменные среды окружения Величавый userprofile
Переменные среды 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 закройте системный реестр. Введенные изменения войдут в жизнь после повторного запуска операционной системы.
В среде 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).