Compartilhar via


Remove-TypeData

Exclui tipos estendidos da sessão atual.

Sintaxe

Remove-TypeData
      -TypeData <TypeData>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-TypeData
      [-TypeName] <String>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Remove-TypeData
      -Path <String[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

O Remove-TypeData cmdlet exclui dados de tipo estendido da sessão atual. Este cmdlet afeta somente a sessão atual e as sessões que são criadas na sessão atual.

Você pode adicionar propriedades e métodos a objetos no PowerShell definindo-os em Update-TypeData comandos e Types.ps1xml arquivos. Remove-TypeData exclui essas propriedades e métodos estendidos da sessão atual. Remove-TypeData não exclui os Types.ps1xml arquivos nem exclui nenhuma definição de tipo estendido dos Types.ps1xml arquivos. Para obter mais informações sobre Types.ps1xml arquivos, consulte about_Types.ps1xml.

Este cmdlet foi introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Remover dados de tipo para um tipo especificado

Este exemplo exclui todos os dados de tipo para o tipo System.Array da sessão, incluindo dados de tipo que foram adicionados por um Types.ps1xml arquivo e dados de tipo dinâmico que foram adicionados à sessão usando o Update-TypeData cmdlet.

Remove-TypeData -TypeName System.Array

Exemplo 2: Remover um tipo de dados estendido de uma sessão

Este exemplo mostra o efeito da remoção de dados de tipo estendido de uma sessão. O primeiro Get-TypeData obtém dados de tipo estendido para o tipo System.DateTime . A saída mostra que uma propriedade DateTime foi adicionada a todos os objetos System.DateTime no PowerShell. O Get-Date cmdlet retorna um objeto System.DateTime . O comando usa a notação de ponto para obter o valor da propriedade DateTime do objeto System.DateTime que Get-Date retorna.

Get-TypeData System.DateTime
(Get-Date).DateTime
Get-TypeData System.DateTime | Remove-TypeData
(Get-Date).DateTime

TypeName        Members
--------        -------
System.DateTime {[DateTime, System.Management.Automation.Runspaces.ScriptPropertyData]}

Friday, January 20, 2012 9:01:00 PM

O próximo Get-TypeData cmdlet para obter todos os dados de tipo estendido para o tipo System.DateTime e canalizá-los para o Remove-TypeData cmdlet para excluir os dados de tipo estendido. O último Get-Date cmdlet mostra o efeito da exclusão dos dados de tipo estendido para o tipo System.DateTime . Como a propriedade System.DateTime não existe mais, um comando para obter seu valor não retorna nada.

Exemplo 3: Remover tipos estendidos para módulos

Este exemplo remove todos os dados de tipo estendido para objetos de módulo. Quando você canaliza um objeto para , Remove-TypeDataRemove-TypeData obtém o nome do tipo de objeto e remove todos os dados de tipo de todos os objetos desse tipo.

Get-Module | Remove-TypeData

Exemplo 4: Remover tipos estendidos de módulos especificados

Este exemplo usa o parâmetro Path do Remove-TypeData cmdlet para remover os tipos estendidos definidos nos Types.ps1xml arquivos adicionados pelos módulos PSScheduledJob e PSWorkflow . Esse comando não afeta os dados de tipo dinâmico adicionados usando o Update-TypeData cmdlet. O comando terá êxito somente quando os módulos tiverem sido importados para a sessão atual.

Remove-TypeData -Path "$PSHOME\Modules\PSScheduledJob", "$PSHOME\Modules\PSWorkflow\PSWorkflow.types.ps1xml"

Para obter mais informações sobre módulos, consulte about_Modules.

Exemplo 5: Remover tipos estendidos de uma sessão remota

Este exemplo remove tipos estendidos de uma sessão remota. O comando usa o Invoke-Command cmdlet para remover dados de tipo estendido para todos os tipos de CIM nas sessões na $S variável.

Invoke-Command -Session $S {Get-TypeData -TypeName *CIM* | Remove-TypeData}

Parâmetros

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Path

Especifica uma matriz de arquivos que esse cmdlet exclui dos dados de tipo estendido da sessão. Este parâmetro é obrigatório.

Insira os caminhos e os nomes de arquivo de um ou mais Types.ps1xml arquivos. Não há suporte para caracteres curinga. Se você omitir o caminho, o local padrão a considerar é o diretório atual.

Tipo:String[]
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-TypeData

Especifica os dados de tipo que esse cmdlet exclui da sessão. Este parâmetro é obrigatório. Insira uma variável que contenha objetos TypeData (System.Management.Automation.Runspaces.TypeData) ou um comando que obtenha objetos TypeData , como um Get-TypeData comando. Você também pode canalizar objetos TypeData para Remove-TypeData.

Tipo:TypeData
Cargo:Named
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-TypeName

Especifica os tipos para os quais esse cmdlet exclui todos os dados de tipo estendido. Para tipos no namespace System, insira o nome abreviado. Caso contrário, é necessário o nome completo do tipo. Não há suporte para caracteres curinga.

Você pode canalizar nomes de tipo para Remove-TypeData. Quando você canaliza um objeto para , Remove-TypeDataRemove-TypeData obtém o nome do tipo do objeto e remove todos os dados de tipo para o tipo de objeto.

Tipo:String
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:False

-WhatIf

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

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

TypeData

Você pode canalizar um objeto TypeData , como os que o Get-TypeData cmdlet retorna, para esse cmdlet.

String

Você pode canalizar uma cadeia de caracteres contendo o nome do tipo para esse cmdlet. Quando você canaliza um objeto para esse cmdlet, ele obtém o nome do tipo do objeto e remove todos os dados de tipo para o tipo de objeto.

Saídas

None

Esse cmdlet não retorna nenhuma saída.

Observações

Remove-TypeData pode remover apenas os dados de tipo estendido na sessão atual. Ele não pode remover dados de tipo estendido presentes no computador mas que não foram adicionados à sessão atual, como tipos estendidos que são definidos em módulos que não foram importados para a sessão atual.