Remove-TypeData

Elimina i tipi estesi dalla sessione corrente.

Sintassi

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

Descrizione

Il Remove-TypeData cmdlet elimina i dati del tipo esteso dalla sessione corrente. Questo cmdlet ha effetto solo sulla sessione corrente e sulle sessioni create nella sessione corrente.

È possibile aggiungere proprietà e metodi agli oggetti in PowerShell definendoli in Update-TypeData comandi e Types.ps1xml file. Remove-TypeData elimina le proprietà estese e i metodi dalla sessione corrente. Remove-TypeData non elimina i Types.ps1xml file né elimina le definizioni dei Types.ps1xml tipi estesi dai file. Per altre informazioni sui Types.ps1xml file, vedere about_Types.ps1xml.

Questo cmdlet è stato introdotto in Windows PowerShell 3.0.

Esempio

Esempio 1: Rimuovere i dati di tipo per un tipo specificato

In questo esempio vengono eliminati tutti i dati di tipo per il tipo System.Array dalla sessione, inclusi i dati di tipo aggiunti da un Types.ps1xml file e dati di tipo dinamico aggiunti alla sessione usando il Update-TypeData cmdlet .

Remove-TypeData -TypeName System.Array

Esempio 2: Rimuovere un tipo di dati esteso da una sessione

In questo esempio viene illustrato l'effetto della rimozione dei dati di tipo esteso da una sessione. Il primo Get-TypeData ottiene dati di tipo esteso per il tipo System.DateTime . L'output mostra che una proprietà DateTime è stata aggiunta a tutti gli oggetti System.DateTime in PowerShell. Il Get-Date cmdlet restituisce un oggetto System.DateTime . Il comando usa la notazione punto per ottenere il valore della proprietà DateTime dell'oggetto System.DateTime che Get-Date restituisce.

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

Il cmdlet successivo Get-TypeData per ottenere tutti i dati di tipo esteso per il tipo System.DateTime e le pipe che consentono al Remove-TypeData cmdlet di eliminare i dati di tipo esteso. L'ultimo Get-Date cmdlet mostra l'effetto dell'eliminazione dei dati di tipo esteso per il tipo System.DateTime . Poiché la proprietà System.DateTime non esiste più, un comando per ottenere il relativo valore non restituisce nulla.

Esempio 3: Rimuovere i tipi estesi per i moduli

In questo esempio vengono rimossi tutti i dati dei tipi estesi per gli oggetti modulo. Quando si invia tramite pipe un oggetto a Remove-TypeData, Remove-TypeData ottiene il nome del tipo di oggetto e rimuove tutti i dati di tipo per tutti gli oggetti di tale tipo.

Get-Module | Remove-TypeData

Esempio 4: Rimuovere i tipi estesi dai moduli specificati

In questo esempio viene usato il parametro Path del Remove-TypeData cmdlet per rimuovere i tipi estesi definiti nei Types.ps1xml file aggiunti dai moduli PSScheduledJob e PSWorkflow . Questo comando non influisce sui dati di tipo dinamico aggiunti tramite il Update-TypeData cmdlet . Il comando riesce solo quando i moduli sono stati importati nella sessione corrente.

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

Per altre informazioni sui moduli, vedere about_Modules.

Esempio 5: Rimuovere i tipi estesi da una sessione remota

In questo esempio vengono rimossi i tipi estesi da una sessione remota. Il comando usa il Invoke-Command cmdlet per rimuovere i dati dei tipi estesi per tutti i tipi CIM nelle sessioni nella $S variabile .

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

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Specifica una matrice di file che questo cmdlet elimina dai dati del tipo esteso della sessione. Questo parametro è obbligatorio.

Immettere i percorsi e i nomi di file di uno o più Types.ps1xml file. I caratteri jolly non sono supportati. Se si omette il percorso, l'impostazione predefinita è la directory corrente.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-TypeData

Specifica i dati di tipo eliminati da questo cmdlet dalla sessione. Questo parametro è obbligatorio. Immettere una variabile contenente oggetti TypeData (System.Management.Automation.Runspaces.TypeData) o un comando che ottiene oggetti TypeData, ad esempio un Get-TypeData comando. È anche possibile inviare tramite pipe oggetti TypeData a Remove-TypeData.

Type:TypeData
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-TypeName

Specifica i tipi per cui questo cmdlet elimina tutti i dati di tipo esteso. Per i tipi nello spazio dei nomi System, immettere il nome breve. In caso contrario, è necessario immettere il nome completo del tipo. I caratteri jolly non sono supportati.

È possibile inviare tramite pipe i nomi dei tipi a Remove-TypeData. Quando si invia tramite pipe un oggetto a Remove-TypeData, Remove-TypeData ottiene il nome del tipo dell'oggetto e rimuove tutti i dati di tipo per il tipo di oggetto.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

TypeData

È possibile inviare tramite pipe un oggetto TypeData , ad esempio quelli restituiti dal Get-TypeData cmdlet, a questo cmdlet.

String

È possibile inviare tramite pipe una stringa contenente il nome del tipo a questo cmdlet. Quando si invia tramite pipe un oggetto a questo cmdlet, ottiene il nome del tipo dell'oggetto e rimuove tutti i dati di tipo per il tipo di oggetto.

Output

None

Questo cmdlet non restituisce output.

Note

Remove-TypeData può rimuovere solo i dati di tipo esteso nella sessione corrente. Non può rimuovere i dati di tipo esteso che sono presenti nel computer ma non sono stati aggiunti alla sessione corrente, ad esempio i tipi estesi definiti nei moduli non importati nella sessione corrente.