Partilhar via


Set-Item

Altera o valor de um item para o valor especificado no comando.

Sintaxe

Path (Default) - All providers

Set-Item
    [-Path] <String[]>
    [[-Value] <Object>]
    [-Force]
    [-PassThru]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

LiteralPath - All providers

Set-Item
    [[-Value] <Object>]
    -LiteralPath <String[]>
    [-Force]
    [-PassThru]
    [-Filter <String>]
    [-Include <String[]>]
    [-Exclude <String[]>]
    [-Credential <PSCredential>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Path (Default) - Alias and Function providers

Set-Item
    [-Path] <string[]>
    [[-Value] <Object>]
    [-Force]
    [-PassThru]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Options <ScopedItemOptions>]
    [<CommonParameters>]

LiteralPath - Alias and Function providers

Set-Item
    [[-Value] <Object>]
    -LiteralPath <string[]>
    [-Force]
    [-PassThru]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Options <ScopedItemOptions>]
    [<CommonParameters>]

Path (Default) - Registry provider

Set-Item
    [-Path] <string[]>
    [[-Value] <Object>]
    [-Force]
    [-PassThru]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Type <RegistryValueKind>]
    [<CommonParameters>]

LiteralPath - Registry provider

Set-Item
    [[-Value] <Object>]
    -LiteralPath <string[]>
    [-Force]
    [-PassThru]
    [-Filter <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Credential <pscredential>]
    [-WhatIf]
    [-Confirm]
    [-Type <RegistryValueKind>]
    [<CommonParameters>]

Description

O cmdlet Set-Item altera o valor de um item, como uma variável ou chave do Registro, para o valor especificado no comando.

Exemplos

Exemplo 1: Criar um alias

Este comando cria um alias de np para o Bloco de Notas.

Set-Item -Path Alias:np -Value "C:\windows\notepad.exe"

Exemplo 2: Alterar o valor de uma variável de ambiente

Este comando altera o valor da variável de ambiente UserRole para Administrator.

Set-Item -Path Env:UserRole -Value "Administrator"

Exemplo 3: Modificar a função de prompt

Este comando altera a função de prompt para que ela exiba o tempo antes do caminho.

Set-Item -Path Function:prompt -Value {
    'PS '+ (Get-Date -Format t) + " " + (Get-Location) + '> '
}

Exemplo 4: Definir opções para a função de prompt

Este comando define as opções AllScope e ReadOnly para a função prompt. Este comando utiliza o parâmetro dinâmico Options de Set-Item. O parâmetro Opções está disponível em Set-Item apenas quando se usa com o provedor Alias ou Função.

Set-Item -Path Function:prompt -Options "AllScope,ReadOnly"

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

Observação

Esse parâmetro não é suportado por nenhum provedor instalado com o PowerShell. Para representar outro usuário ou elevar suas credenciais ao executar esse cmdlet, use Invoke-Command.

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, como uma matriz de cadeia de caracteres, um item ou itens que esse cmdlet exclui na operação. 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. O parâmetro Exclude só é efetivo quando o comando inclui o conteúdo de um item, como C:\Windows\*, onde o caractere curinga especifica o conteúdo do diretório C:\Windows.

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

-Filter

Especifica um filtro para qualificar o parâmetro Path. O provedor FileSystem é o único provedor do PowerShell instalado que oferece suporte ao uso de filtros. A sintaxe da linguagem de filtro do FileSystem pode ser encontrada em about_Wildcards. 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 itens que não podem ser alterados de outra forma, como alias de somente leitura ou variáveis de somente leitura. O cmdlet não pode alterar aliases ou variáveis constantes. A implementação varia de fornecedor para fornecedor. Para obter mais informações, consulte about_Providers. Mesmo utilizando o parâmetro Force, o cmdlet não consegue ultrapassar as restrições de segurança.

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, 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 coringa são permitidos. O parâmetro Include só é efetivo quando o comando inclui o conteúdo de um item, como C:\Windows\*, onde o caractere curinga especifica o conteúdo do diretório C:\Windows.

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

-LiteralPath

Especifica um caminho para um ou mais locais. O valor de LiteralPath é utilizado exatamente como foi escrito. 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.

Para obter mais informações, consulte about_Quoting_Rules.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:PSPath, LP

Conjuntos de parâmetros

LiteralPath
Position:Named
Obrigatório:True
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Options

Este é um parâmetro dinâmico disponibilizado pelos provedores de Alias e de função . Para obter mais informações, consulte about_Alias_Provider e about_Function_Provider.

Especifica o valor da propriedade Opções de um alias.

Os valores válidos são:

  • None: O alias não tem restrições (valor padrão)
  • ReadOnly: O alias pode ser excluído, mas não pode ser alterado sem usar o parâmetro Force
  • Constant: O alias não pode ser excluído ou alterado
  • Private: O alias está disponível apenas no âmbito atual
  • AllScope: O alias é copiado para quaisquer novos escopos que são criados
  • Unspecified: A opção não está especificada

Propriedades dos parâmetros

Tipo:ScopedItemOptions
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

-PassThru

Passa um objeto que representa o item para o pipeline. Por padrão, esse cmdlet não gera nenhuma saída.

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

-Path

Especifica o caminho para a localização dos itens. Caracteres coringa são permitidos.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:True
NãoMostrar:False

Conjuntos de parâmetros

Path
Position:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline por nome de propriedade:True
Valor dos restantes argumentos:False

-Type

Este é um parâmetro dinâmico disponibilizado pelo provedor Registry. O fornecedor de do Registo e este parâmetro só estão disponíveis no Windows.

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. Usado para REG_SZ valores.
  • 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. Usado para valores REG_EXPAND_SZ.
  • Binary: Especifica dados binários em qualquer formato. Valores usados para REG_BINARY.
  • DWord: Especifica um número binário de 32 bits. Usado para valores REG_DWORD.
  • MultiString: Especifica uma matriz de cadeias de caracteres terminadas em nulo terminadas por dois caracteres nulos. Usado para valores de REG_MULTI_SZ.
  • Qword: Especifica um número binário de 64 bits. Usado para REG_QWORD valores.
  • Unknown: Indica um tipo de dados do Registro sem suporte, como valores REG_RESOURCE_LIST.

Propriedades dos parâmetros

Tipo:RegistryValueKind
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:True
Valor dos restantes argumentos:False

-Value

Especifica um novo valor para o item.

Propriedades dos parâmetros

Tipo:Object
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:1
Obrigatório:False
Valor do pipeline:True
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

Object

Você pode canalizar um objeto que representa o novo valor do item para este cmdlet.

Saídas

None

Por padrão, esse cmdlet não retorna nenhuma saída.

Object

Quando você usa o parâmetro PassThru, esse cmdlet retorna um objeto que representa o item.

Notas

O PowerShell inclui os seguintes aliases para Set-Item:

  • Todas as plataformas:

    • si
  • Set-Item não é suportado pelo provedor do Sistema de Arquivos do PowerShell. Para alterar os valores dos itens no sistema de arquivos, use o cmdlet Set-Content.

  • Nas unidades do Registro, HKLM: e HKCU:, Set-Item altera os dados no valor (padrão) de uma chave do Registro.

    • Para criar e alterar os nomes das chaves do Registro, use o cmdlet New-Item e Rename-Item.
    • Para alterar os nomes e os dados nos valores do registo, utilize os cmdlets New-ItemProperty, Set-ItemPropertye Rename-ItemProperty.
  • Set-Item é 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.