Registry Provider
Nome do provedor
Registry
Unidades
HKLM:, HKCU:
Descrição resumida
Fornece acesso às chaves e aos valores de Registro do sistema a partir do Windows PowerShell.
Descrição detalhada
O provedor Registry do Windows PowerShell permite obter, adicionar, alterar, limpar e excluir chaves de registro e valores Windows PowerShell.
As chaves de Registro são representadas como instâncias da classe Microsoft.Win32.RegistryKey. Os valores de Registro são representados como instâncias da classe PSCustomObject.
O provedor Registry permite acessar um namespace hierárquico que consiste em chaves e subchaves de Registro. Os valores e dados do Registro não são componentes dessa hierarquia. Em vez disso, eles são propriedades de cada uma das chaves.
O provedor Registry suporta todos os cmdlets que contêm o nome Item (os cmdlets Item), como Get-Item, Copy-Item e Rename Item. Utilize os cmdlets Item quando trabalhar com chaves e subchaves do Registro. O provedor Registry também oferece suporte para os cmdlets que contêm o nome ItemProperty (os cmdlets ItemProperty). Utilize os cmdlets ItemProperty quando trabalhar com valores e dados do Registro. Você não pode utilizar os cmdlets que contêm o nome Content (os cmdlets Content) com o provedor Registry.
Cada chave de Registro é protegida por um descritor de segurança. Você poderá usar Get-Acl para exibir o descritor de segurança de uma chave.
Recursos
ShouldProcess
Exemplos
Navegando no Registro
-------------------------- EXEMPLO 1 --------------------------
Este comando define o local atual da chave de Registro HKEY_LOCAL_MACHINE\Software.
set-location hklm:\software
-------------------------- EXEMPLO 2 --------------------------
Este comando exibe o local atual:
get-location
Gerenciando chaves de Registro
-------------------------- EXEMPLO 1 --------------------------
Este comando exibe informações sobre cada subchave imediata da chave de Registro HKEY_LOCAL_MACHINE\Software:
get-childitem -path hklm:\software
-------------------------- EXEMPLO 2 --------------------------
Este comando cria a subchave TestNew sob a subchave HKCU:\Environment:
new-item -path hkcu:\Environment\TestNew
-------------------------- EXEMPLO 3 --------------------------
Este comando remove a subchave TestNew da chave HKEY_CURRENT_USER\Environment:
remove-item -path hkcu:\Environment\TestNew
-------------------------- EXEMPLO 4 --------------------------
Este comando copia a chave TestNew para a subchave TestCopy:
copy-item -path hkcu:\Environment\TestNew hkcu:\Environment\TestNew\TestCopy
-------------------------- EXEMPLO 5 --------------------------
Este comando exibe informações sobre todas as subchaves da chave de Registro HKEY_LOCAL_MACHINE\Software:
get-childitem -path hklm:\Software -recurse
-------------------------- EXEMPLO 6 --------------------------
Este comando move a chave de Registro HKEY_CURRENT_USER\Environment\testnewcopy e suas propriedades, juntamente com todas as suas subchaves e propriedades, para HKEY_CURRENT_USER\Environment\testnew:
move-item -path hkcu:\environment\testnewcopy `
-destination hkcu:\environment\testnew
-------------------------- EXEMPLO 7 --------------------------
Este comando renomeia a chave de Registro HKEY_CURRENT_USER\Environment\testnew para HKEY_CURRENT_USER\Environment\test:
rename-item -path hkcu:\environment\testnew\ -newname test
-------------------------- EXEMPLO 8 --------------------------
Este comando exibe o descritor de segurança para o item de Registro especificado:
get-acl -path hkcu:\environment\testnew | format-list -property *
Gerenciando entradas do Registro
-------------------------- EXEMPLO 1 --------------------------
Este comando exibe o nome do valor e os dados de valor de cada entrada do Registro contida na chave de Registro HKEY_CURRENT_USER\Environment:
get-itemproperty -path hkcu:\Environment
A entrada do Registro Default é retornada apenas se ela tem um valor.
-------------------------- EXEMPLO 2 --------------------------
Este comando exibe o nome do valor e os dados de valor de cada entrada Temp do Registro contida na chave de Registro HKEY_CURRENT_USER\Environment:
get-itemproperty -path hkcu:\Environment -name Temp
-------------------------- EXEMPLO 3 --------------------------
Este comando cria a entrada do Registro pstest na chave HKEY_CURRENT_USER e define seu valor como pstestvalue.
new-itemproperty -path hkcu:\environment -name "pstest" -value "pstestvalue"
-------------------------- EXEMPLO 4 --------------------------
Este comando atualiza o valor da entrada do Registro pstest para updatedvalue na chave HKEY_CURRENT_USER\Environment.
set-itemproperty -path hkcu:\environment -name pstest
-value "updatedvalue"
-------------------------- EXEMPLO 5 --------------------------
Este comando renomeia o nome do valor da entrada do Registro pstest para pstestnew na chave HKEY_CURRENT_USER\Environment:
rename-itemproperty -path hkcu:\environment -name pstest `
-newname pstestnew
-------------------------- EXEMPLO 6 --------------------------
Este comando copia a entrada do Registro pstestnew da chave HKEY_CURRENT_USER\Environment para a chave HKEY_CURRENT_USER\Environment\testnewcopy:
copy-itemproperty -path hkcu:\environment `
-destination hkcu:\environment\testnewcopy -name pstestnew
-------------------------- EXEMPLO 7 --------------------------
O comando move a entrada do Registro pstestnew da chave HKEY_CURRENT_USER\environment\testnewcopy para a chave HKEY_CURRENT_USER\environment\testnew.
move-itemproperty -path hkcu:\environment\testnewcopy '
-destination hkcu:\environment\testnew -name pstestnew
-------------------------- EXEMPLO 8 --------------------------
Este comando limpa o valor da entrada do Registro pstestnew na chave HKEY_CURRENT_USER\Environment\testnew:
clear-itemproperty -path hkcu:\environment\testnew -name pstestnew
Você poderá usar o cmdlet Clear-Item para limpar o valor da entrada do Registro padrão de uma subchave. Por exemplo, o seguinte comando limpa o valor da entrada padrão da chave de Registro HKEY_CURRENT_USER\Environment\testnew: clear-item -path hkcu:\environment\testnew
-------------------------- EXEMPLO 9 --------------------------
Este comando remove a entrada do Registro pstestnew da chave de Registro HKEY_CURRENT_USER\Environment\testnew:
remove-itemproperty -path hkcu:\environment\testnew `
-name pstestnew
-------------------------- EXEMPLO 10 --------------------------
Este comando atualiza o valor da entrada do Registro padrão na chave HKEY_CURRENT_USER\Environment\testnew para "default value":
set-itemproperty -path hkcu:\environment\testnew `
-name "(default)" -value "default value"
Você também pode utilizar o valor padrão de uma chave de Registro usando o cmdlet Set-Item. Por exemplo, o seguinte comando atualiza o valor padrão da chave testnew: set-item -path hkcu:\environment\testnew -value "another default value"
Parâmetros dinâmicos
Parâmetros dinâmicos são parâmetros de cmdlets, que são adicionados por um provedor do Windows PowerShell e estão disponíveis apenas quando o cmdlet está sendo usado na unidade habilitada pelo provedor.
Type <Microsoft.Win32.RegistryValueKind>
Especifica os tipos de dados a serem usados ao armazenar valores no Registro ou identifica o tipo de dados de um valor no Registro.
Value | Description |
---|---|
String |
Especifica uma cadeia de caracteres terminada em nulo. Equivalente a REG_SZ. |
ExpandString |
Especifica uma cadeia de caracteres terminada em nulo que contém referências não expandidas para variáveis de ambiente que são expandidas quando o valor é recuperado. Equivalente a REG_EXPAND_SZ. |
Binary |
Especifica dados binários em qualquer formulário. Equivalente a REG_BINARY. |
DWord |
Especifica um número binário de 32 bits. Equivalente a REG_DWORD. |
MultiString |
Especifica uma matriz de cadeias de caracteres terminadas em nulo finalizada por dois caracteres nulos. Equivalente a REG_MULTI_SZ. |
QWord |
Especifica um número binário de 64 bits. Equivalente a REG_QWORD. |
Desconhecido |
Indica um tipo de dados de Registro sem suporte, como REG_RESOURCE_LIST. |