Partilhar via


New-ItemProperty

Cria uma nova propriedade para um item e define seu valor.

Sintaxe

New-ItemProperty
   [-Path] <String[]>
   [-Name] <String>
   [-PropertyType <String>]
   [-Value <Object>]
   [-Force]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]
New-ItemProperty
   -LiteralPath <String[]>
   [-Name] <String>
   [-PropertyType <String>]
   [-Value <Object>]
   [-Force]
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Credential <PSCredential>]
   [-WhatIf]
   [-Confirm]
   [-UseTransaction]
   [<CommonParameters>]

Description

O cmdlet New-ItemProperty cria uma nova propriedade para um item especificado e define seu valor. Normalmente, esse cmdlet é usado para criar novos valores do Registro, porque os valores do Registro são propriedades de um item de chave do Registro.

Este cmdlet não adiciona propriedades a um objeto.

  • Para adicionar uma propriedade a uma instância de um objeto, use o cmdlet Add-Member.
  • Para adicionar uma propriedade a todos os objetos de um tipo específico, modifique o arquivo Types.ps1xml.

Exemplos

Exemplo 1: Adicionar uma entrada do Registro

Este comando adiciona uma nova entrada de registo, "NoOfEmployees", à chave "MyCompany" da colmeia "HKLM:\Software".

O primeiro comando usa o parâmetro Path para especificar o caminho da chave do Registro "MyCompany". Ele usa o parâmetro Name para especificar um nome para a entrada e o parâmetro Value para especificar seu valor.

O segundo comando usa o cmdlet Get-ItemProperty para ver a nova entrada do Registro.

New-ItemProperty -Path "HKLM:\Software\MyCompany" -Name "NoOfEmployees" -Value 822
Get-ItemProperty "HKLM:\Software\MyCompany"

PSPath        : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\mycompany
PSParentPath  : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName   : mycompany
PSDrive       : HKLM
PSProvider    : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 822

Exemplo 2: Adicionar uma entrada de registo a uma chave

Este comando adiciona uma nova entrada do Registro a uma chave do Registro. Para especificar a chave, ele usa um operador de pipeline (|) para enviar um objeto que representa a chave para New-ItemProperty.

A primeira parte do comando usa o cmdlet Get-Item para obter a chave do Registro "MyCompany". O operador de pipeline envia os resultados do comando para New-ItemProperty, que adiciona a nova entrada do registro ("NoOfLocations"), e seu valor (3), à chave "MyCompany".

Get-Item -Path "HKLM:\Software\MyCompany" | New-ItemProperty -Name NoOfLocations -Value 3

Esse comando funciona porque o recurso de vinculação de parâmetros do Windows PowerShell associa o caminho do objeto RegistryKey que Get-Item retorna ao parâmetro LiteralPath de New-ItemProperty. Para obter mais informações, consulte about_Pipelines.

Exemplo 3: Criar um valor MultiString no Registro usando um Here-String

Este exemplo cria um valor MultiString usando um Here-String.

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'HereString' -PropertyType MultiString -Value @"
This is text which contains newlines
It can also contain "quoted" strings
"@
$newValue.multistring

This is text which contains newlines
It can also contain "quoted" strings

Exemplo 4: Criar um valor MultiString no Registro usando uma matriz

O exemplo mostra como usar uma matriz de valores para criar o valor MultiString.

$newValue = New-ItemProperty -Path "HKLM:\SOFTWARE\ContosoCompany\" -Name 'MultiString' -PropertyType MultiString -Value ('a','b','c')
$newValue.multistring[0]

a

Parâmetros

-Confirm

Solicita confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Credential

Especifica uma conta de usuário que tem permissão para executar essa ação. O padrão é o usuário atual.

Digite um nome de usuário, como "User01" ou "Domain01\User01", ou insira um objeto PSCredential , como um gerado pelo cmdlet . Se escrever um nome de utilizador, ser-lhe-á solicitada uma palavra-passe.

Advertência

Esse parâmetro não é suportado por nenhum provedor instalado com o Windows PowerShell.

Tipo:PSCredential
Position:Named
Default value:Current user
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Exclude

Especifica, como uma matriz de cadeia de caracteres, uma propriedade ou propriedade que esse cmdlet exclui da operação. O valor desse parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como "*.txt". Caracteres curinga são permitidos.

Tipo:String[]
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:True

-Filter

Especifica um filtro no formato ou idioma do provedor. O valor desse parâmetro qualifica o parâmetro Path.

A sintaxe do filtro, incluindo o uso de caracteres curinga, depende do provedor. Os filtros são mais eficientes do que outros parâmetros, porque o provedor os aplica quando o cmdlet obtém os objetos em vez de fazer com que o PowerShell filtre os objetos depois que eles são recuperados.

Tipo:String
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:True

-Force

Força o cmdlet a criar uma propriedade em um objeto que não pode ser acessado pelo usuário de outra forma. A implementação varia de fornecedor para fornecedor. Para obter mais informações, consulte about_Providers.

Tipo:SwitchParameter
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Include

Especifica, como uma matriz de cadeia de caracteres, um item ou itens que esse cmdlet inclui na operação. O valor desse parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como "*.txt". Caracteres curinga são permitidos.

Tipo:String[]
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:True

-LiteralPath

Especifica o caminho para o local atual da propriedade. Ao contrário do parâmetro Path, o valor de LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples dizem ao PowerShell para não interpretar nenhum caractere como sequências de escape.

Tipo:String[]
Aliases:PSPath
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Name

Especifica um nome para a nova propriedade. Se a propriedade for uma entrada do Registro, esse parâmetro especifica o nome da entrada.

Tipo:String
Aliases:PSProperty
Position:1
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-Path

Especifica o caminho do item. Esse parâmetro identifica o item ao qual esse cmdlet adiciona a nova propriedade.

Tipo:String[]
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-PropertyType

Especifica o tipo de propriedade que esse cmdlet adiciona. Os valores aceitáveis para este parâmetro são:

  • 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 a variáveis de ambiente que são expandidas quando o valor é recuperado. Equivalente a REG_EXPAND_SZ.
  • Binary: Especifica dados binários em qualquer formato. 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 terminadas 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 registo não suportado, como REG_RESOURCE_LIST.
Tipo:String
Aliases:Type
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-UseTransaction

Inclui o comando na transação ativa. Este parâmetro é válido somente quando uma transação está em andamento. Para obter mais informações, consulte about_Transactions.

Tipo:SwitchParameter
Aliases:usetx
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Value

Especifica o valor da propriedade. Se a propriedade for uma entrada do Registro, esse parâmetro especificará o valor da entrada.

Tipo:Object
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

None

Não é possível canalizar a entrada para este cmdlet.

Saídas

PSCustomObject

New-ItemProperty retorna um objeto personalizado que contém a nova propriedade.

Notas

New-ItemProperty é projetado para trabalhar com os dados expostos por qualquer provedor. Para listar os provedores disponíveis em sua sessão, digite Get-PSProvider. Para obter mais informações, consulte about_Providers.