Windows переменные: Какие переменные Windows существуют? | Компьютерная помощь

Содержание

Какие переменные Windows существуют? | Компьютерная помощь

В современных ОС компании Microsoft на платформе NT для получения информации о системе используются следующие переменные (Полужирным выделен текст, относящийся только к Windows Vista/7):

Название Тип Описание
ALLUSERSPROFILE локальная Возвращает размещение профиля «All Users». В Windows 7 возвращает путь к папке C:\ProgramData\.
APPDATA системная Возвращает используемое по умолчанию размещение данных приложений. В Windows XP это C:\Documents and Settings\%UserName%\Application Data. В Windows 7 — C:\Users\%UserName%\AppData\Roaming.
CD локальная Указывает путь к текущему каталогу. Идентична команде CD без аргументов.
CLIENTNAME локальная динамическая Переменная определена только в среде удаленного подключения к рабочему столу. Хранит имя компьютера (%COMPUTERNAME%) клиента удаленного доступа.
CMDCMDLINE локальная Точная команда, использованная для запуска текущего cmd.exe.
CMDEXTVERSION системная Версия текущего Command Processor Extensions.
COMMONPROGRAMFILES системная Расположение каталога «Common Files» (обычно %ProgramFiles%\Common Files).
COMMONPROGRAMFILES(x86) системная Расположение каталога «Common Files» в Program Files (x86) для 64-разрядной ОС (обычно %ProgramFiles(x86)%\Common Files).
COMPUTERNAME системная Имя компьютера
COMSPEC системная Путь к исполняемому файлу командного процессора (shell).
DATE системная Возвращает текущую дату. Использует тот же формат, что и команда date /t. Создаётся командой Cmd.exe.
ERRORLEVEL системная Возвращает код ошибки последней использовавшейся команды. Значение, не равное нулю, обычно указывает на наличие ошибки.
HOMEDRIVE системная Возвращает имя диска локальной рабочей станции, связанного с основным каталогом пользователя. Задаётся на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
HOMEPATH системная Возвращает полный путь к основному каталогу пользователя. Задаётся на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
HOMESHARE системная Возвращает сетевой путь к обще му основному каталогу пользователя. Задаётся на основании расположения основного каталога. Основной каталог пользователя указывается в оснастке «Локальные пользователи и группы».
LOCALAPPDATA системная Возвращает используемое по умолчанию локальное размещение данных приложений (C:\Users\%UserName%\AppData\Local).
LOGONSERVER локальная Имя контроллера домена, использовавшегося для авторизации текущего пользователя.
NUMBER_OF_PROCESSORS системная Количество процессоров в системе (фактически, количество ядер).
OS системная Название операционной системы. Windows XP и Windows 2000 отображаются как Windows_NT.
PATH системная Указывает путь поиска исполняемых файлов.
PATHEXT системная Возвращает список расширений файлов, которые рассматриваются операционной системой как исполняемые.
PROCESSOR_ARCHITECTURE системная Архитектура процессора. Возможные варианты: x86, IA64, AMD64.
PROCESSOR_IDENTIFIER системная Описание процессора (в Интернете часто встречается ошибочное написание PROCESSOR_IDENTFIER — пропущена буква).
PROCESSOR_LEVEL системная Номер модели процессора.
PROCESSOR_REVISION системная Ревизия процессора.
PROGRAMDATA системная Возвращает путь к каталогу C:\ProgramData\ (аналогично ALLUSERSPROFILE).
PROGRAMFILES системная Путь к каталогу Program  Files.
PROGRAMFILES(x86) системная Путь к каталогу Progra m Files (x86) в 64-разрядных системах для приложений архитектуры x86.
PROMPT локальная Возвращает параметры командной строки для текущего интерпретатора. Создаётся командой Cmd.exe.
PUBLIC системная В Windows 7 возвращает путь к каталогу C:\Users\Public.
RANDOM системная Случайное десятичное число от 0 до 32767. Генерируется Cmd.exe.
SESSIONNAME локальная Хранит имя активного пользовательского сеанса. При локальном входе имеет значение «Console», при удаленном доступе имеет вид RDP-Tcp#<номер сеанса>
SYSTEMDRIVE системная Диск, на котором расположен корневой каталог Windows.
SYSTEMROOT системная Путь к корневому каталогу Windows.
TEMP и TMP системная и локальная Возвращает временные каталоги, по умолчанию используемые приложениями, которые доступны пользователям, выполнившим вход в систему. Некоторые приложения требуют переменную TEMP, другие — переменную TMP. Потенциально TEMP и TMP могут указывать на разные каталоги, но обычно совпадают.
TIME системная Возвращает текущее время. Использует тот же формат, что и команда time /t. Создаётся командой Cmd.exe. Дополнительные сведения о команде time см. в разделе Time.
USERDOMAIN локальная Имя домена, которому принадлежит текущий пользователь.
USERNAME локальная Имя текущего пользователя.
USERPROFILE локальная Путь к профилю текущего пользователя.
WINDIR системная Каталог, в котором установлена Windows.

Вы можете задать вопрос по статье специалисту.

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

Тестирование в тестовой среде никто не отменяет.
Администрация сайта не несет ответственность за ваши действия.

Вся информация на сайте носит исключительно справочный характер и не является публичной офертой, определяемой в Статье 437 Гражданского кодекса Российской Федерации.

Полный список переменных сред в Windows 10 G-ek.com

В Windows 10  переменные среды — это предварительно определенные имена, представляющие путь к определенным местам в операционной системе, например к диску, конкретному файлу или папке.

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

Например, вместо перехода по следующему пути C:\Users\<UserName>\AppData\Roaming можно открыть команду «Выполнить» (клавиша Windows + R), ввести %APPDATA% и нажать клавишу Enter  для доступа к тому же пути. Или вы можете использовать переменную %HOMEPATH% для доступа к местоположению папок по умолчанию для текущего пользователя — где операционная система хранит папки рабочего стола, документов, загрузок, OneDrive и т. Д.













































VARIABLE WINDOWS 10
%ALLUSERSPROFILE% C:\ProgramData
%APPDATA% C:\Users\{имя пользователя}\AppData\Roaming
%COMMONPROGRAMFILES% C:\Program Files\Common Files
%COMMONPROGRAMFILES(x86)% C:\Program Files (x86)\Common Files
%CommonProgramW6432% C:\Program Files\Common Files
%COMSPEC% C:\Windows\System32\cmd. exe
%HOMEDRIVE% C:\
%HOMEPATH% C:\Users\{имя пользователя}
%LOCALAPPDATA% C:\Users\{имя пользователя}\AppData\Local
%LOGONSERVER% \\{domain_logon_server}
%PATH% C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
%PathExt% .com;.exe;.bat;.cmd;.vbs;.vbe;.js;.jse;.wsf;.wsh;.msc
%PROGRAMDATA% C:\ProgramData
%PROGRAMFILES% C:\Program Files
%ProgramW6432% C:\Program Files
%PROGRAMFILES(X86)% C:\Program Files (x86)
%PROMPT% $P$G
%SystemDrive% C:
%SystemRoot% C:\Windows
%TEMP% C:\Users\{имя пользователя}\AppData\Local\Temp
%TMP% C:\Users\{имя пользователя}\AppData\Local\Temp
%USERDOMAIN% Пользовательский домен, связанный с текущим пользователем.
%USERDOMAIN_ROAMINGPROFILE% Пользовательский домен, связанный с перемещаемым профилем.
%USERNAME% {имя пользователя}
%USERPROFILE% C:\Users\{имя пользователя}
%WINDIR% C:\Windows
%PUBLIC% C:\Users\Public
%PSModulePath% %SystemRoot%\system32\WindowsPowerShell\v1.0\Modules\
%OneDrive% C:\Users\{имя пользователя}\OneDrive
%DriverData% C:\Windows\System32\Drivers\DriverData
%CD% Выводит текущий путь к каталогу. (Командная строка.)
%CMDCMDLINE% Выводит командную строку, используемую для запуска текущего сеанса командной строки. (Командная строка.)
%CMDEXTVERSION% Выводит количество текущих расширений командного процессора.  (Командная строка.
%COMPUTERNAME% Выводит имя системы.
%DATE% Выводит текущую дату. (Командная строка.)
%TIME% Время выхода. (Командная строка.)
%ERRORLEVEL% Выводит число определяющих статус выхода предыдущей команды. (Командная строка.)
%PROCESSOR_IDENTIFIER% Идентификатор процессора
%PROCESSOR_LEVEL% Outputs processor level.
%PROCESSOR_REVISION% Вывод ревизии процессора.
%NUMBER_OF_PROCESSORS% Выводит количество физических и виртуальных ядер.
%RANDOM% Выводит случайное число от 0 до 32767.
%OS% Windows_NT

 

Хотя вы можете использовать переменные среды для быстрого доступа к определенным местам в Windows 10, вы, как правило, будете использовать эти переменные при создании сценария или приложения.

Помните, что некоторые из упомянутых переменных не зависят от местоположения, в том числе  % COMPUTERNAME%, %PATHEXT%, %PROMPT%, %USERDOMAIN%, %USERNAME%.

Хотя это руководство ориентировано на Windows 10, важно отметить, что эти переменные также будут работать в Windows 11, Windows 8.x, Windows 7 и Windows Vista.

о переменных среды — PowerShell

  • Статья
  • 11 минут на чтение

Краткое описание

Описывает доступ к переменным среды и управление ими в PowerShell.

Подробное описание

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

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

Примечание

В отличие от Windows имена переменных среды в macOS и Linux
чувствительный к регистру. Например, $env:Path и $env:PATH отличаются
переменные среды на платформах, отличных от Windows.

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

В Windows переменные среды могут быть определены в трех областях:

  • Область компьютера (или системы)
  • Пользовательская область
  • Объем процесса

Область Process содержит переменные среды, доступные в текущем
процесса или сеанса PowerShell. Этот список переменных наследуется от
родительский процесс и строится из переменных Machine и
Пользовательские области .

При изменении переменных среды в PowerShell изменение затрагивает только
текущий сеанс. Это поведение напоминает поведение Установить команду
в командной оболочке Windows и команде Setenv в среде UNIX.
среды. Чтобы изменить значения в области «Машина» или «Пользователь», необходимо использовать
методы класса System.Environment .

Для внесения изменений в переменные машинного уровня у вас также должно быть разрешение. Если
вы пытаетесь изменить значение без достаточного разрешения, команда завершается ошибкой и
PowerShell выдает ошибку.

PowerShell предоставляет несколько различных методов использования и управления
переменные окружения.

  • Синтаксис переменной
  • Поставщик среды и командлеты Item
  • Класс .NET System.Environment

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

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

 $Env:<имя-переменной>
 

Например, чтобы отобразить значение переменной среды WINDIR :

 $Env:windir
 
 C:\Windows
 

В этом синтаксисе знак доллара ( $ ) указывает на переменную, а имя диска
( Env: ) указывает переменную среды, за которой следует имя переменной
( ветер ).

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

 $Env:<имя-переменной> = "<новое-значение>"
 

Например, чтобы создать переменную среды Foo :

 $Env:Foo = 'Пример'
 

Поскольку переменные среды всегда являются строками, их можно использовать как любые
другая переменная, содержащая строку. Например:

 «Переменная среды Foo имеет значение: $Env:Foo»
$Env:Foo += '!'
$ Окружение: Фу
 
 Переменная среды 'Foo' имеет значение: Пример
Пример!
 

Поскольку переменная окружения не может быть пустой строкой, присвойте ей значение
$null или пустая строка удаляет его. Например:

 $Env:Foo = ''
$ Окружение: Фу | Get-Member -MemberType Свойства
 
 Get-Member : необходимо указать объект для командлета Get-Member.
В строке:1 символ:12
+ $env:foo | Get-Member
+ ~~~~~~~~~~
    + CategoryInfo: CloseError: (:) [Get-Member], InvalidOperationException
    + FullyQualifiedErrorId: NoObjectInGetMember,Microsoft.PowerShell.Commands.GetMemberCommand
 

Команда Get-Member вернула ошибку, так как переменная среды была удалена.
Вы можете видеть, что он не возвращает ошибку, когда вы используете его на пустом
строка:

 '' | Get-Member -MemberType Свойства
 
 Тип Имя: System.String
Имя MemberType Определение
---- ---------- ----------
Длина Свойство int Длина {get;}
 

Дополнительные сведения о переменных в PowerShell см. в разделе about_Variables.

Использование поставщика среды и командлетов Item

Поставщик PowerShell Environment предоставляет интерфейс для взаимодействия
с переменными среды в формате, напоминающем диск файловой системы. Это
позволяет получать, добавлять, изменять, очищать и удалять переменные и значения среды
в PowerShell.

Например, чтобы создать переменную среды Foo со значением Bar :

 New-Item -Path Env:\Foo -Value 'Bar'
 
 Имя Значение
---- -----
Фу Бар
 

Вы также можете скопировать переменную среды с помощью Copy-Item , установите значение
переменная среды с Set-Item , список переменных среды с
Get-Item и удалите переменную среды с помощью Remove-Item .

 Copy-Item -Path Env:\Foo -Destination Env:\Foo2 -PassThru
Set-Item -Path Env:\Foo2 -Value 'BAR'
Get-Item -Path Env:\Foo*
Remove-Item -Path Env:\Foo* -Подробный
 
 Имя Значение
---- -----
Бар Foo2
Имя Значение
---- -----
Foo2 БАР
Фу Бар
ПОДРОБНО: Выполнение операции «Удалить элемент» над целью «Элемент: Foo2». 
ПОДРОБНО: Выполнение операции «Удалить элемент» над целью «Элемент: Foo».
 

Для получения дополнительной информации об использовании поставщика Environment для управления
переменные среды, см. about_Environment_Provider.

Использование методов System.Environment

Класс System.Environment предоставляет GetEnvironmentVariable и
SetEnvironmentVariable методов для получения и изменения переменных среды.

В следующем примере создается новая переменная среды Foo со значением
из Бар , а затем возвращает его значение.

 [Среда]::SetEnvironmentVariable('Foo','Bar')
[Среда]::GetEnvironmentVariable('Foo')
 
 Бар
 

Вы можете удалить переменную среды с помощью SetEnvironmentVariable
метод, указав пустую строку для значения переменной. Например,
чтобы удалить переменную среды Foo :

 [Environment]::SetEnvironmentVariable('Foo','')
[Среда]::GetEnvironmentVariable('Foo')
 
 

Дополнительные сведения о методах класса System. Environment см. в разделе
Методы окружения.

Сохранение изменений переменных среды

В Windows существует три способа внесения постоянных изменений в
переменная окружения: установив их в своем профиле, используя
Метод SetEnvironmentVariable и с помощью системной панели управления.

Сохранение переменных среды в вашем профиле

Любая переменная среды, которую вы добавляете или изменяете в своем профиле PowerShell,
доступны в любой сессии, которая загружает ваш профиль. Этот метод работает для любого
версии PowerShell на любой поддерживаемой платформе.

Например, чтобы создать переменную среды CompanyUri и обновить
Путь Переменная среды для включения папки C:\Tools , добавьте следующее
строки в свой профиль PowerShell:

 $Env:CompanyUri = 'https://internal.contoso.com'
$Env:Путь += ';C:\Инструменты'
 

Примечание

В Linux или macOS двоеточие ( : ) используется вместо точки с запятой ( ; ) для
отделить новый путь от пути, предшествующего ему в списке.

Вы можете получить путь к своему профилю PowerShell с помощью автоматического $PROFILE
переменная. Дополнительные сведения о профилях см. в разделе about_Profiles.

Сохранение переменных среды с помощью SetEnvironmentVariable

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

Например, чтобы сохранить новую переменную среды Foo со значением Bar в
область действия машины:

 [Environment]::SetEnvironmentVariable('Foo', 'Bar', 'Machine')
 

Вы можете удалить переменную среды из пользовательской или машинной области,
установка значения переменной в пустую строку.

 [Окружающая среда]::SetEnvironmentVariable('Foo', '', 'Машина')
 

Сохранение переменных среды с помощью системной панели управления

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

Чтобы внести постоянные изменения в переменную среды в Windows с помощью
Панель управления системой:

  1. Откройте панель управления системой.
  2. Выберите Система .
  3. Выберите Расширенные настройки системы .
  4. Перейдите на вкладку Дополнительно .
  5. Выберите Переменные среды… .
  6. Внесите изменения.

Переменные среды PowerShell

Функции PowerShell могут использовать переменные среды для хранения пользовательских настроек.
Эти переменные работают как переменные предпочтения, но они наследуются потомком.
сеансы сеансов, в которых они созданы. Для получения дополнительной информации о
переменные предпочтения, см. about_Preference_Variables.

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

  • POWERSHELL_TELEMETRY_OPTOUT

    Чтобы отказаться от телеметрии, установите для переменной среды значение true , yes или
    1 .

    Дополнительные сведения см. в разделе about_Telemetry.

  • POWERSHELL_DISTRIBUTION_CHANNEL

    Начиная с PowerShell 7.2, эта переменная среды задается
    установочные пакеты для записи метода и источника установки для
    PowerShell.

    Эта информация включается в данные телеметрии, отправляемые в корпорацию Майкрософт. Пользователи
    не должен изменять это значение.

  • POWERSHELL_UPDATECHECK

    Поведение уведомления об обновлении можно изменить с помощью
    POWERSHELL_UPDATECHECK переменная среды. Следующие значения
    поддерживается:

    • Выкл. отключает функцию уведомления об обновлении
    • Значение по умолчанию равнозначно отсутствию определения POWERSHELL_UPDATECHECK :
      • Общедоступные выпуски уведомляют об обновлениях общедоступных выпусков
      • Выпуски Preview/RC уведомляют об обновлениях общедоступных и предварительных выпусков
    • LTS уведомляет только об обновлениях общедоступных выпусков долгосрочного обслуживания (LTS)

    Дополнительные сведения см. в разделе about_Update_Notifications.

  • PSExecutionPolicyPreference

    Сохраняет набор правил выполнения для текущего сеанса. Эта среда
    переменная существует только тогда, когда вы устанавливаете политику выполнения для одного сеанса.
    Вы можете сделать это двумя разными способами.

    • Запуск сеанса из командной строки с помощью клавиши Политика выполнения
      параметр для установки политики выполнения для сеанса.

    • Используйте командлет Set-ExecutionPolicy . Используйте параметр Scope с
      значение Процесс .

      Дополнительные сведения см. в разделе about_Execution_Policies.

  • PSModulePath

    Переменная среды $env:PSModulePath содержит список папок
    локации, в которых ищутся модули и ресурсы. В Windows
    список расположений папок разделен точкой с запятой ( ; ) символ. На
    на платформах, отличных от Windows, двоеточие ( : ) разделяет расположение папок в
    переменная окружения.

    По умолчанию эффективным расположением, назначенным $env:PSModulePath , являются:

    • Общесистемные расположения: эти папки содержат модули, поставляемые с
      PowerShell. Модули хранятся в папке $PSHOME\Modules . Также,
      Это место, где установлены модули управления Windows.

    • Модули, устанавливаемые пользователем: это модули, устанавливаемые пользователем.
      Install-Module имеет параметр Scope , который позволяет указать
      установлен ли модуль для текущего пользователя или для всех пользователей. За
      дополнительную информацию см. в Install-Module.

      • В Windows расположение пользовательской области CurrentUser
        папку $HOME\Documents\PowerShell\Modules . Расположение
        AllUsers область $env:ProgramFiles\PowerShell\Modules .
      • В системах, отличных от Windows, расположение пользовательского CurrentUser
        областью действия является папка $HOME/.local/share/powershell/Modules . Местоположение
        из области AllUsers /usr/local/share/powershell/Modules .

    Кроме того, программы установки, устанавливающие модули в другие каталоги, такие как
    как каталог Program Files, могут добавлять свои местоположения к значению
    $env:PSModulePath .

    Дополнительные сведения см. в разделе about_PSModulePath.

  • PSModuleAnalysisCachePath

    PowerShell обеспечивает контроль над файлом, используемым для кэширования данных о
    модули и их командлеты. Кэш читается при запуске при поиске
    команда и записывается в фоновом потоке через некоторое время после того, как модуль
    импортный.

    Расположение кэша по умолчанию:

    • Windows PowerShell 5.1: $env:LOCALAPPDATA\Microsoft\Windows\PowerShell
    • PowerShell 6. 0 и выше: $env:LOCALAPPDATA\Microsoft\PowerShell
    • Не-Windows по умолчанию: ~/.cache/powershell

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

    Примечание

    Если обнаружение команд работает неправильно, например IntelliSense
    показывает несуществующие команды, вы можете удалить файл кеша. Кэш
    воссоздается при следующем запуске PowerShell.

    Чтобы изменить расположение кэша по умолчанию, установите переменную среды
    перед запуском PowerShell. Изменения этой переменной среды влияют только на
    дочерние процессы. Значение должно указывать полный путь (включая имя файла), который
    PowerShell имеет разрешение на создание и запись файлов.

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

     # `NUL` это специальное устройство в Windows, на которое нельзя записать,
    # в системах, отличных от Windows, вы должны использовать `/dev/null`
    $env:PSModuleAnalysisCachePath = 'NUL'
     

    Это устанавливает путь к устройству NUL . PowerShell не может писать в
    путь, но ошибка не возвращается. Вы можете увидеть сообщения об ошибках, используя
    трассировщик:

     Trace-Command -PSHost -Name Modules -Expression {
      Import-Module Microsoft.PowerShell.Management-Force
    }
     
  • PSDisableModuleAnalysisCacheCleanup

    При записи кэша анализа модулей PowerShell проверяет наличие модулей
    которые больше не существуют, чтобы избежать излишне большого кеша. Иногда эти
    проверки нежелательны, и в этом случае вы можете отключить их, установив этот
    значение переменной среды до 1 .

    Установка этой переменной среды вступает в силу немедленно в текущем
    процесс.

Другие переменные среды, используемые PowerShell

Информация о пути

  • ПУТЬ

    Переменная среды $env:PATH содержит список расположений папок, которые
    операционная система ищет исполняемые файлы. В Windows список
    расположения папок разделяются точкой с запятой ( ; ) символ. На
    на платформах, отличных от Windows, двоеточие ( : ) разделяет расположение папок в
    переменная окружения.

  • ПУТЬ

    Переменная $env:PATHEXT содержит список расширений файлов, которые Windows
    считается исполняемым файлом. Когда файл сценария с одним из перечисленных
    extensions выполняется из PowerShell, скрипт запускается в текущей
    консольный или терминальный сеанс. Если расширения файла нет в списке, скрипт
    запускается в новом сеансе консоли.

    Чтобы убедиться, что сценарии для другого языка сценариев выполняются в текущем
    console, добавьте расширение файла, используемое языком сценариев. За
    например, для запуска скриптов Python в текущей консоли добавьте .py
    расширение переменной окружения. Для Windows для поддержки .py
    расширение как исполняемый файл, вы должны зарегистрировать расширение файла, используя
    команды ftype и assoc командной оболочки CMD. PowerShell не имеет
    прямой метод для регистрации обработчика файлов. Для получения дополнительной информации см.
    документация по команде ftype.

    Сценарии PowerShell всегда запускаются в текущем сеансе консоли. Вы не
    необходимо добавить расширение .PS1 .

  • XDG переменные

    На платформах, отличных от Windows, PowerShell использует следующую среду XDG.
    переменные, как определено в спецификации базового каталога XDG.

    • XDG_CONFIG_HOME
    • XDG_DATA_HOME
    • XDG_CACHE_HOME

Возможности терминала

Начиная с PowerShell 7.2, для
управлять функциями виртуального терминала, такими как escape-последовательности ANSI, которые раскрашивают
вывод. Поддержку escape-последовательностей ANSI можно отключить с помощью TERM .
или NO_COLOR переменные окружения.

  • СРОК

    Следующие значения $env:TERM изменяют поведение следующим образом:

    • немой — устанавливает $Host. UI.SupportsVirtualTerminal = $false
    • xterm-mono — устанавливает $PSStyle.OutputRendering = PlainText
    • xtermm — устанавливает $PSStyle.OutputRendering = PlainText
  • NO_COLOR

    Если $env:NO_COLOR существует, то $PSStyle.OutputRendering имеет значение
    Обычный текст . Для получения дополнительной информации о среде NO_COLOR
    переменная, см. https://no-color.org/.

См. также

  • about_Environment_Provider
  • about_Profiles
  • about_Variables
  • Методы среды

Установить переменную среды в Windows {How-To}

Введение

Переменные среды — это пары «ключ-значение», которые система использует для настройки программной среды. Переменные среды также играют решающую роль в определенных установках, таких как установка Java на ПК или Raspberry Pi.

В этом руководстве мы рассмотрим различные способы установки, вывода списка и отмены установки переменных среды в Windows 10.

Предварительные требования Командная строка или Windows PowerShell

Проверка текущих переменных среды

Способ проверки текущих переменных среды зависит от того, используете ли вы командную строку или Windows PowerShell:

Список всех переменных среды

В командной строке используйте следующую команду для вывода списка всех переменных среды:

 set 

Если вы используете Windows PowerShell, перечислите все переменные среды с помощью:

 Get-ChildItem Env: 

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

И командная строка, и PowerShell используют команду echo для вывода списка определенных переменных среды.

В командной строке используется следующий синтаксис:

 echo %[имя_переменной]% 

В Windows PowerShell используйте:

 echo $Env:[имя_переменной] 

Здесь [имя_переменной] — это имя переменной среды, которую вы хотите проверить.

Установка переменной среды в Windows через графический интерфейс

Выполните шаги, чтобы установить переменные среды с помощью графического интерфейса Windows:

1. Нажмите Windows + R , чтобы открыть приглашение Windows Run.

2. Введите sysdm.cpl и нажмите ОК .

3. Откройте вкладку Advanced и нажмите кнопку Environment Variables в окне System Properties.

4. Окно переменных среды разделено на две части. В разделах отображаются пользовательские и общесистемные переменные среды. Чтобы добавить переменную, нажмите кнопку New… под соответствующим разделом.

5. Введите имя и значение переменной в поле «Новая пользовательская переменная» и нажмите OK .

Установка переменной среды в Windows с помощью командной строки

Используйте команду setx для установки новой пользовательской переменной среды с помощью командной строки:

 setx [имя_переменной] "[значение_переменной]" 

1 Где:

1

  • [имя_переменной] : Имя переменной среды, которую вы хотите установить.
  • [значение_переменной] : значение, которое вы хотите присвоить новой переменной среды.

Например:

 setx Test_variable "Значение переменной" 

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

Чтобы добавить общесистемную переменную среды, откройте командную строку от имени администратора и введите:

 setx [имя_переменной] "[значение_переменной]" /M 

Сбросить переменные среды

Существует два способа сбросить переменные среды в Windows :

Сброс переменных среды в Windows через графический интерфейс

Чтобы отменить настройку переменной среды с помощью графического интерфейса, выполните действия, описанные в разделе, посвященном настройке переменных среды с помощью графического интерфейса, чтобы открыть окно «Переменные среды».

В этом окне:

1. Найдите переменную, которую вы хотите отменить, в соответствующем разделе.

2. Щелкните переменную, чтобы выделить ее.

3. Нажмите кнопку Удалить , чтобы отменить ее.

Отмена установки переменных среды в Windows через реестр

При добавлении переменной среды в Windows пара «ключ-значение» сохраняется в реестре. Папки реестра по умолчанию для переменных среды:

  • Пользовательские переменные: HKEY_CURRENT_USERENVIRONMENT
  • Общедоступные переменные: HKEY_LOCAL_MACHINESYSTEMCURRENTCONTROLSECONCONTROLSENSERNESSENCEMENTERNVENSERNVINMENTION

.SERSELSENSERNESSENCESSENCENVENSERNVENSERNMENTION

.

Примечание: Команда reg работает одинаково в командной строке и Windows PowerShell.

Используйте следующую команду для вывода списка всех пользовательских переменных среды:

 reg query HKEY_CURRENT_USEREnvironment 

Выведите список всех системных переменных среды с помощью:

 reg query "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment" 

Если вы хотите вывести конкретную переменную:

 reg query HKEY_CURRENT_USEREnvironment /v [имя_переменной] 

или

 reg query "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment" /v [имя_переменной] 

Где:

  • /v : Объявляет намерение перечислить конкретную переменную.