about_Environment_Provider
Имя поставщика
Среда
Диски
Env:
Возможности
ShouldProcess
Краткое описание
Предоставляет доступ к переменным среды Windows.
Подробное описание
Поставщик среды PowerShell позволяет получать, добавлять, изменять, очищать и удалять переменные среды и значения в PowerShell.
Переменные среды — это динамически именованные переменные, описывающие среду, в которой выполняются программы. Windows и PowerShell используют переменные среды для хранения постоянных сведений, влияющих на выполнение системы и процессов. В отличие от переменных PowerShell переменные среды не подвергаются ограничениям области.
Диск среды — это неструктурированное пространство имен, содержащее переменные среды, относящиеся к текущему сеансу пользователя. Переменные среды не имеют дочерних элементов.
Поставщик среды поддерживает следующие командлеты, описанные в этой статье.
Типы, предоставляемые этим поставщиком
Каждая переменная среды — это экземпляр класса System.Collections.DictionaryEntry . Имя переменной является ключом словаря. Значение переменной среды является значением словаря.
Навигация по диску среды
Поставщик среды предоставляет свое хранилище данных на Env:
диске. Чтобы работать с переменными среды, измените расположение на Env:
диск (Set-Location Env:
) или запустите другой диск PowerShell. Чтобы ссылаться на переменную среды из другого расположения, используйте Env:
имя диска в пути.
Set-Location Env:
Чтобы вернуться к диску файловой системы, введите имя диска. Например, введите:
Set-Location C:
Вы также можете работать с поставщиком среды с любого другого диска PowerShell. Чтобы ссылаться на переменную среды из другого расположения, используйте имя Env:
диска в пути.
Поставщик среды также предоставляет переменные среды с помощью префикса переменной $env:
. Следующая команда просматривает содержимое переменной среды ProgramFiles . Префикс переменной $env:
можно использовать из любого диска PowerShell.
PS C:\> $env:ProgramFiles
C:\Program Files
Можно также изменить значение переменной среды с помощью префикса переменной $env:
. Все внесенные изменения относятся только к текущему сеансу PowerShell до тех пор, пока он активен.
Примечание.
PowerShell использует псевдонимы, чтобы предоставить знакомый способ работы с путями поставщика. Такие команды, как dir
и ls
теперь являются псевдонимами для Get-ChildItem, cd
— это псевдоним для set-Location. и pwd
является псевдонимом для Get-Location.
Получение переменных среды
Эта команда перечисляет все переменные среды в текущем сеансе.
Get-Item -Path Env:
Эту команду можно использовать из любого диска PowerShell.
Поставщик среды не имеет контейнеров, поэтому указанная выше команда имеет тот же эффект при использовании.Get-ChildItem
Get-ChildItem -Path Env:
Получение выбранной переменной среды
Эта команда получает WINDIR
переменную среды.
Get-ChildItem -Path Env:windir
Кроме того, можно использовать формат префикса переменной.
$env:windir
Создание переменной среды
Эта команда создает USERMODE
переменную среды со значением "Non-Admin". Значение -Path
параметра создает новый элемент на Env:
диске. Новая переменная среды доступна только в текущем сеансе PowerShell до тех пор, пока она активна.
PS C:\> New-Item -Path Env: -Name USERMODE -Value Non-Admin
Изменение переменной среды
Переименование переменной среды
Эта команда использует Rename-Item
командлет для изменения имени созданной переменной USERMODE
USERROLE
среды. Не изменяйте имена переменных среды, используемых системой. Хотя эти изменения затрагивают только текущий сеанс, они могут привести к некорректному поведению системы или программы.
Rename-Item -Path Env:USERMODE -NewName USERROLE
Изменение переменной среды
Эта команда использует Set-Item
командлет для изменения значения переменной USERROLE
среды на "Администратор".
Set-Item -Path Env:USERROLE -Value Administrator
Копирование переменной среды
Эта команда копирует значение переменной USERROLE
среды в USERROLE2
переменную среды.
Copy-Item -Path Env:USERROLE -Destination Env:USERROLE2
Удаление переменной среды
Эта команда удаляет USERROLE2
переменную среды из текущего сеанса.
Remove-Item -Path Env:USERROLE2
Удаление переменной среды с помощью Clear-Item
Эта команда удаляет USERROLE
переменную среды, очищая его значение.
Clear-Item -Path Env:USERROLE
Использование конвейера
Командлеты поставщика принимают входные данные конвейера. Конвейер можно использовать для упрощения задачи, отправляя данные поставщика из одного командлета в другой командлет поставщика. Дополнительные сведения об использовании конвейера с командлетами поставщика см. в приведенных в этой статье ссылок на командлеты.
Получение справки
Начиная с Windows PowerShell 3.0, стали доступны настраиваемые разделы справки по командлетам поставщика, в которых объясняется поведение этих командлетов на диске файловой системы.
Чтобы получить разделы справки, настроенные для диска файловой системы, выполните команду Get-Help на диске файловой системы или используйте -Path
параметр Get-Help , чтобы указать диск файловой системы.
Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path env:
См. также
PowerShell