Partilhar 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 estendidos da sessão atual. Este cmdlet afeta apenas a sessão atual e as sessões 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 ou exclui quaisquer definições de tipo estendidas 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 estendidos de uma sessão. O primeiro Get-TypeData obtém dados de tipo estendidos 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 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 estendidos para o tipo System.DateTime e canaliza isso 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 estendidos 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 estendidos para objetos de módulo. Quando você canaliza um objeto para Remove-TypeDatao , Remove-TypeData obtém o nome do tipo de objeto e remove todos os dados de tipo para 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 . Este comando não afeta os dados de tipo dinâmico que são adicionados usando o Update-TypeData cmdlet. O comando só é bem-sucedido quando os módulos foram 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 estendidos para todos os tipos CIM nas sessões na $S variável.

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

Parâmetros

-Confirm

Solicita a sua 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

-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 nomes de arquivo de um ou mais Types.ps1xml arquivos. Não são suportados carateres universais. Se você omitir o caminho, o local padrão será o diretório atual.

Tipo:String[]
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais: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
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-TypeName

Especifica os tipos para os quais esse cmdlet exclui todos os dados de tipo estendidos. Para tipos no namespace System, insira o nome abreviado. Caso contrário, o nome completo do tipo é necessário. Não são suportados carateres universais.

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

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

-WhatIf

Apresenta o que aconteceria mediante a execução do cmdlet. 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

TypeData

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

String

Você pode canalizar uma cadeia de caracteres contendo o nome do tipo para este 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

Este cmdlet não retorna nenhuma saída.

Notas

Remove-TypeData pode remover apenas os dados de tipo estendidos na sessão atual. Ele não pode remover dados de tipo estendidos que estão no computador, mas 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.