Set-ItemProperty
Cria ou altera o valor de uma propriedade de um item.
Sintaxe
propertyValuePathSet (Predefinição)
Set-ItemProperty
[-Path] <String[]>
[-Name] <String>
[-Value] <Object>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
propertyPSObjectPathSet
Set-ItemProperty
[-Path] <String[]>
-InputObject <PSObject>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
propertyValueLiteralPathSet
Set-ItemProperty
[-Name] <String>
[-Value] <Object>
-LiteralPath <String[]>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
propertyPSObjectLiteralPathSet
Set-ItemProperty
-LiteralPath <String[]>
-InputObject <PSObject>
[-PassThru]
[-Force]
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[-UseTransaction]
[<CommonParameters>]
Description
O cmdlet Set-ItemProperty altera o valor da propriedade do item especificado.
Você pode usar o cmdlet para estabelecer ou alterar as propriedades dos itens.
Por exemplo, você pode usar Set-ItemProperty para definir o valor da propriedade IsReadOnly de um objeto de arquivo como $True.
Você também usa Set-ItemProperty para criar e alterar valores e dados do Registro.
Por exemplo, você pode adicionar uma nova entrada do Registro a uma chave e estabelecer ou alterar seu valor.
Exemplos
Exemplo 1: Definir uma propriedade de um arquivo
Este comando define o valor da propriedade IsReadOnly do arquivo "final.doc" como "true". Ele usa Path para especificar o arquivo, Name para especificar o nome da propriedade e o parâmetro Value para especificar o novo valor.
O arquivo é um objeto System.IO.FileInfo e IsReadOnly é apenas uma de suas propriedades.
Para ver todas as propriedades, digite Get-Item C:\GroupFiles\final.doc | Get-Member -MemberType Property.
A variável automática $true representa um valor de "TRUE".
Para obter mais informações, consulte sobre_Variáveis_Automáticas.
Set-ItemProperty -Path C:\GroupFiles\final.doc -Name IsReadOnly -Value $true
Exemplo 2: Criar uma entrada e um valor do Registro
Este exemplo mostra como usar Set-ItemProperty para criar uma nova entrada do Registro e atribuir um valor à entrada.
Ele cria a entrada "NoOfEmployees" na chave "ContosoCompany" na chave "HKLM\Software" e define seu valor como 823.
Como as entradas do Registro são consideradas propriedades das chaves do Registro, que são itens, use Set-ItemProperty para criar entradas do Registro e para estabelecer e alterar seus valores.
O primeiro comando cria a entrada do Registro.
Ele usa Path para especificar o caminho da unidade HKLM: e a chave "Software\MyCompany".
O comando usa Name para especificar o nome da entrada e Value para especificar um valor.
O segundo comando usa o cmdlet Get-ItemProperty para ver a nova entrada do Registro.
Se você usar os cmdlets Get-Item ou Get-ChildItem, as entradas não aparecerão porque são propriedades de uma chave, não itens ou itens filho.
O terceiro comando altera o valor da entrada NoOfEmployees para 824.
Você também pode usar o cmdlet New-ItemProperty para criar a entrada do Registro e seu valor e, em seguida, usar Set-ItemProperty para alterar o valor.
Para obter mais informações sobre a unidade HKLM:, digite Get-Help Get-PSDrive.
Para obter mais informações sobre como usar o PowerShell para gerenciar o registro, digite Get-Help Registry.
Set-ItemProperty -Path "HKLM:\Software\ContosoCompany" -Name "NoOfEmployees" -Value 823
Get-ItemProperty -Path "HKLM:\Software\ContosoCompany"
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\contosocompany
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName : contosocompany
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 823
Set-ItemProperty -Path "HKLM:\Software\ContosoCompany" -Name "NoOfEmployees" -Value 824
Get-ItemProperty -Path "HKLM:\Software\ContosoCompany"
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\contosocompany
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software
PSChildName : contosocompany
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
NoOfLocations : 2
NoOfEmployees : 824
Exemplo 3: Modificar um item usando o pipeline
Estes comandos mostram como usar um operador de pipeline (|) para enviar um item para Set-ItemProperty.
A primeira parte do comando usa Get-ChildItem para obter um objeto que representa o arquivo "Weekly.txt".
O comando usa um operador de pipeline para enviar o objeto de arquivo para Set-ItemProperty.
O comando Set-ItemProperty usa os parâmetros Name e Value para especificar a propriedade e seu novo valor.
Este comando é equivalente a usar o parâmetro InputObject para especificar o objeto que Get-ChildItem obtém.
Get-ChildItem weekly.txt | Set-ItemProperty -Name IsReadOnly -Value $True
Parâmetros
-Confirm
Solicita confirmação antes de executar o cmdlet.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | False |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | Cf. |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | 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 Get-Credential.
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.
Propriedades dos parâmetros
| Tipo: | PSCredential |
| Default value: | Current user |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
-Exclude
Especifica os itens sobre os quais o cmdlet não atua e inclui todos os outros. O valor desse parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como "*.txt". Caracteres coringa são permitidos.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-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.
Propriedades dos parâmetros
| Tipo: | String |
| Default value: | None |
| Suporta carateres universais: | True |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Force
Força o cmdlet a definir uma propriedade em itens que não podem ser acessados pelo usuário de outra forma. A implementação varia de fornecedor para fornecedor. Para obter mais informações, consulte about_Providers.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | False |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Include
Especifica apenas os itens sobre os quais o cmdlet atua, o que exclui todos os outros. O valor desse parâmetro qualifica o parâmetro Path. Insira um elemento ou padrão de caminho, como "*.txt". Caracteres coringa são permitidos.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-InputObject
Especifica o objeto que tem as propriedades que esse cmdlet altera. Insira uma variável que contenha o objeto ou um comando que obtenha o objeto.
Propriedades dos parâmetros
| Tipo: | PSObject |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
propertyPSObjectPathSet
| Position: | Named |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
propertyPSObjectLiteralPathSet
| Position: | Named |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
-LiteralPath
Especifica um caminho da propriedade item. Ao contrário do parâmetro Path, o valor de LiteralPath é usado exatamente como é digitado. Nenhum caractere é interpretado como carta curinga. Se o caminho incluir caracteres de escape, coloque-o entre aspas simples. Aspas simples indicam ao PowerShell para não interpretar quaisquer caracteres como sequências de escape.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | PSPath |
Conjuntos de parâmetros
propertyValueLiteralPathSet
| Position: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
propertyPSObjectLiteralPathSet
| Position: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
-Name
Especifica o nome da propriedade.
Propriedades dos parâmetros
| Tipo: | String |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | PSProperty |
Conjuntos de parâmetros
propertyValuePathSet
| Position: | 1 |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
propertyValueLiteralPathSet
| Position: | 1 |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
-PassThru
Devolve um objeto que representa a propriedade do item. Por padrão, esse cmdlet não gera nenhuma saída.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Path
Especifica o caminho dos itens com a propriedade a ser modificada.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
propertyValuePathSet
| Position: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
propertyPSObjectPathSet
| Position: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | 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.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | False |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | Usetx |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Value
Especifica o valor da propriedade.
Propriedades dos parâmetros
| Tipo: | Object |
| Default value: | None |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
propertyValuePathSet
| Position: | 2 |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
propertyValueLiteralPathSet
| Position: | 2 |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | False |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
| Aliases: | Wi |
Conjuntos de parâmetros
(All)
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
PSObject
Você pode canalizar objetos para este cmdlet.
Saídas
None, System.Management.Automation.PSCustomObject
Este cmdlet gera um objeto PSCustomObject que representa o item que foi alterado e seu novo valor de propriedade, se você especificar o parâmetro PassThru. Caso contrário, esse cmdlet não gerará nenhuma saída.
Notas
Set-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.