Имя поставщика

Registry

Диски

HKLM:, HKCU:

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

Предоставляет доступ к разделам и значениям системного реестра в Windows PowerShell.

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

Поставщик Windows PowerShell Registry позволяет извлекать, добавлять, изменять, очищать и удалять разделы и значения реестра в Windows PowerShell.

Разделы реестра представлены как экземпляры класса Microsoft.Win32.RegistryKey. Значения реестра представлены экземплярами класса PSCustomObject.

Поставщик Registry позволяет получить доступ к иерархическому пространству имен, состоящему из разделов и подразделов. Значения и данные реестра не являются компонентами этой иерархии. Вместо этого они являются свойствами каждого из разделов.

Поставщик Registry поддерживает все командлеты, содержащие слово Item (командлеты Item), такие как Get-Item, Copy-Item и Rename-Item. Для работы с разделами и подразделами реестра используются командлеты группы Item. Поставщик Registry также поддерживает командлеты, содержащие слово ItemProperty (командлеты ItemProperty). Для работы со значениями и данными реестра используются командлеты группы ItemProperty. Использовать командлеты, содержащие слово Content (командлеты Content), при работе с поставщиком Registry нельзя.

Каждый раздел реестра защищен дескриптором безопасности. Для просмотра дескриптора безопасности раздела можно использовать командлет Get-Acl.

Возможности

ShouldProcess

Примеры

Просмотр реестра

-------------------------- ПРИМЕР 1 --------------------------

Эта команда задает в качестве текущего положения раздел реестра HKEY_LOCAL_MACHINE\Software.

set-location hklm:\software

-------------------------- ПРИМЕР 2 --------------------------

Эта команда отображает текущее положение.

get-location

Управление разделами реестра

-------------------------- ПРИМЕР 1 --------------------------

Эта команда отображает сведения о каждом непосредственном подразделе раздела реестра HKEY_LOCAL_MACHINE\Software.

get-childitem -path hklm:\software

-------------------------- ПРИМЕР 2 --------------------------

Эта команда создает новый подраздел TestNew в подразделе HKCU:\Environment.

new-item -path hkcu:\Environment\TestNew

-------------------------- ПРИМЕР 3 --------------------------

Эта команда удаляет подраздел TestNew в разделе HKEY_CURRENT_USER\Environment.

remove-item -path hkcu:\Environment\TestNew

-------------------------- ПРИМЕР 4 --------------------------

Эта команда копирует раздел TestNew в подраздел TestCopy.

copy-item -path  hkcu:\Environment\TestNew  hkcu:\Environment\TestNew\TestCopy

-------------------------- ПРИМЕР 5 --------------------------

Эта команда отображает сведения обо всех подразделах раздела реестра HKEY_LOCAL_MACHINE\Software.

get-childitem -path hklm:\Software -recurse

-------------------------- ПРИМЕР 6 --------------------------

Эта команда перемещает раздел реестра HKEY_CURRENT_USER\Environment\testnewcopy и его свойства, а также подразделы и их свойства, в раздел HKEY_CURRENT_USER\Environment\testnew.

move-item -path hkcu:\environment\testnewcopy `
-destination hkcu:\environment\testnew

-------------------------- ПРИМЕР 7 --------------------------

Эта команда изменяет имя раздела реестра HKEY_CURRENT_USER\Environment\testnew на HKEY_CURRENT_USER\Environment\test.

rename-item -path hkcu:\environment\testnew\ -newname test

-------------------------- ПРИМЕР 8 --------------------------

Эта команда отображает дескриптор безопасности указанного элемента реестра.

get-acl -path hkcu:\environment\testnew | format-list -property *

Управление записями реестра

-------------------------- ПРИМЕР 1 --------------------------

Эта команда отображает имя и данные значения каждой записи реестра в разделе реестра HKEY_CURRENT_USER\Environment.

get-itemproperty -path hkcu:\Environment

Запись реестра "По умолчанию" возвращается только в том случае, если она содержит значение.

-------------------------- ПРИМЕР 2 --------------------------

Эта команда отображает имя и данные значения записи реестра Temp в разделе реестра HKEY_CURRENT_USER\Environment.

get-itemproperty -path hkcu:\Environment -name Temp

-------------------------- ПРИМЕР 3 --------------------------

Эта команда создает запись реестра "pstest" в разделе HKEY_CURRENT_USER и присваивает ей значение "pstestvalue".

new-itemproperty -path hkcu:\environment -name "pstest" -value "pstestvalue"

-------------------------- ПРИМЕР 4 --------------------------

Эта команда присваивает записи реестра "pstest" в разделе HKEY_CURRENT_USER\Environment значение "updatedvalue".

set-itemproperty -path hkcu:\environment -name pstest 
-value "updatedvalue"

-------------------------- ПРИМЕР 5 --------------------------

Эта команда изменяет имя записи реестра "pstest" в разделе HKEY_CURRENT_USER\Environment на "pstestnew".

rename-itemproperty -path hkcu:\environment -name pstest `
-newname pstestnew

-------------------------- ПРИМЕР 6 --------------------------

Эта команда копирует запись реестра "pstestnew" из раздела HKEY_CURRENT_USER\Environment в раздел HKEY_CURRENT_USER\Environment\testnewcopy.

copy-itemproperty -path hkcu:\environment ` 
-destination hkcu:\environment\testnewcopy -name pstestnew

-------------------------- ПРИМЕР 7 --------------------------

Эта команда перемещает запись реестра "pstestnew" из раздела HKEY_CURRENT_USER\Environment\testnewcopy в раздел HKEY_CURRENT_USER\Environment\testnew.

move-itemproperty -path hkcu:\environment\testnewcopy ' 
-destination hkcu:\environment\testnew -name pstestnew

-------------------------- ПРИМЕР 8 --------------------------

Эта команда очищает значение записи реестра "pstestnew" в разделе HKEY_CURRENT_USER\Environment\testnew.

clear-itemproperty -path hkcu:\environment\testnew -name pstestnew

Для очистки значения записи реестра по умолчанию в подразделе можно использовать командлет Clear-Item. Например, следующая команда очищает значение записи по умолчанию в разделе реестра HKEY_CURRENT_USER\Environment\testnew. clear-item -path hkcu:\environment\testnew

-------------------------- ПРИМЕР 9 --------------------------

Эта команда удаляет запись реестра "pstestnew" из раздела реестра HKEY_CURRENT_USER\Environment\testnew.

remove-itemproperty -path hkcu:\environment\testnew `
-name pstestnew

-------------------------- ПРИМЕР 10 --------------------------

Эта команда изменяет значение записи реестра по умолчанию в разделе HKEY_CURRENT_USER\Environment\testnew на "значение по умолчанию".

set-itemproperty -path hkcu:\environment\testnew `
-name "(default)" -value "default value"

Обновить значение по умолчанию в разделе реестра можно также при помощи командлета Set-Item. Например, следующая команда обновляет значение по умолчанию раздела реестра testnew. set-item -path hkcu:\environment\testnew -value "другое значение по умолчанию"

Динамические параметры

Динамические параметры — это параметры командлетов, добавляемые поставщиком Windows PowerShell и доступные только при использовании командлета на диске поставщика.

Type <Microsoft.Win32.RegistryValueKind>

Задает типы данных, используемые для хранения значений реестра, либо определяет тип данных значения в реестре.

Value Description

String

Определяет строку, заканчивающуюся символом NULL. Эквивалентно типу REG_SZ.

ExpandString

Определяет строку, заканчивающуюся символом NULL и содержащую неразвернутые ссылки на переменные среды, которые развертываются при извлечении значения. Эквивалентно типу REG_EXPAND_SZ.

Binary

Определяет двоичные данные в любой форме. Эквивалентно типу REG_BINARY.

DWord

Определяет 32-разрядное двоичное число. Эквивалентно типу REG_DWORD.

MultiString

Определяет массив строк, заканчивающихся символом NULL. Массив заканчивается двумя символами NULL. Эквивалентно типу REG_MULTI_SZ.

QWord

Определяет 64-разрядное двоичное число. Эквивалентно типу REG_QWORD.

Unknown

Указывает неподдерживаемый тип данных реестра, например REG_RESOURCE_LIST.

Поддержка командлетов

См. также