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 cmdlet Remove-TypeData 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 comandos Update-TypeData e arquivos Types.ps1xml. Remove-TypeData exclui essas propriedades e métodos estendidos da sessão atual. Remove-TypeData não exclui os arquivos Types.ps1xml nem exclui quaisquer definições de tipo estendidas dos arquivos Types.ps1xml. 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 de System.Array da sessão, incluindo dados de tipo que foram adicionados por um arquivo de Types.ps1xml e dados de tipo dinâmico que foram adicionados à sessão usando o cmdlet Update-TypeData.

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. A primeira 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 cmdlet Get-Date 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 cmdlet Get-TypeData obter todos os dados de tipo estendidos para o System.DateTime tipo e canaliza isso para o cmdlet Remove-TypeData para excluir os dados de tipo estendido. O cmdlet Last Get-Date mostra o efeito da exclusão dos dados de tipo estendidos para o tipo de 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-TypeData, 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 cmdlet Remove-TypeData para remover os tipos estendidos definidos nos arquivos Types.ps1xml adicionados pelos módulos PSScheduledJob e PSWorkflow. Este comando não afeta os dados de tipo dinâmico que são adicionados usando o cmdlet Update-TypeData. 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 cmdlet Invoke-Command para remover dados de tipo estendidos para todos os tipos CIM nas sessões na variável $S.

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

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

-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 arquivos Types.ps1xml. Não há suporte para curingas. 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 comando Get-TypeData. 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 há suporte para curingas.

Você pode canalizar nomes de tipo para Remove-TypeData. Quando você canaliza um objeto para Remove-TypeData, 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

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

TypeData

Você pode canalizar um objeto TypeData, como aqueles que o cmdlet Get-TypeData 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.