Condividi tramite


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 cmdlet Remove-TypeData elimina i dati di 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 Windows PowerShell definendoli nei comandi Update-TypeData e nei file Types.ps1xml. Remove-TypeData elimina tali proprietà e metodi estesi dalla sessione corrente. Remove-TypeData non elimina i file Types.ps1xml né le eventuali definizioni di tipi estesi dai file Types.ps1xml. Per altre informazioni sui file Types.ps1xml, vedere about_Types.ps1xml (https://go.microsoft.com/fwlink/?LinkID=113274).

Questo cmdlet è stato introdotto in Windows PowerShell 3.0.

Esempio

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

PS C:\> Remove-TypeData -TypeName System.Array

Questo comando elimina dalla sessione tutti i dati di tipo per il tipo System.Array , inclusi i dati di tipo aggiunti da un file Types.ps1xml e i dati di tipo dinamico aggiunti alla sessione usando il cmdlet Update-TypeData.

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

The first command uses the Get-TypeData cmdlet to get extended type data for the **System.DateTime** type.The output shows that a **DateTime** property has been added to all **System.DateTime** objects in Windows PowerShell.
PS C:\> Get-TypeData System.DateTime
TypeName        Members
--------        -------
System.DateTime {[DateTime, System.Management.Automation.Runspaces.ScriptPropertyData]}

The second command uses the Get-Date cmdlet, which returns a **System.DateTime** object. The command uses dot notation to get the value of the DateTime property of the **System.DateTime** object that **Get-Date** returns.
PS C:\> (Get-Date).DateTime
Friday, January 20, 2012 9:01:00 PM

The third command uses the Get-TypeData cmdlet to get all extended type data for the **System.DateTime** type and the **Remove-TypeData** cmdlet to delete the extended type data.
PS C:\> Get-TypeData System.DateTime | Remove-TypeData

The fourth command shows the effect of deleting the extended type data for the System.DateTime type. The command repeats the second command. However, because the System.DateTime property no longer exists, a command to get its value returns nothing.
PS C:\> (Get-Date).DateTime

Questo comando mostra l'effetto della rimozione dei dati di tipo esteso da una sessione.

Esempio 3: Rimuovere i tipi estesi per i moduli

PS C:\> Get-Module | Remove-TypeData

Questo comando rimuove tutti i dati di tipo esteso per gli oggetti del modulo. Quando si invia un oggetto tramite pipe a Remove-TypeData, Remove-TypeData ottiene il nome del tipo dell'oggetto e rimuove tutti i dati del tipo per tutti gli oggetti di quel tipo.

Esempio 4: Rimuovere i tipi estesi dai moduli specificati

PS C:\> Remove-TypeData -Path "C:\WINDOWS\System32\WindowsPowerShell\v1.0\Modules\PSScheduledJob, C:\WINDOWS\System32\WindowsPowerShell\v1.0\Modules\PSWorkflow\PSWorkflow.types.ps1xml"

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

Per altre informazioni sui moduli, vedere about_Modules.

Esempio 5: Rimuovere i tipi estesi da una sessione remota

PS C:\> Invoke-Command -Session $S {Get-TypeData -TypeName *CIM* | Remove-TypeData}

Questo comando rimuove i tipi estesi da una sessione remota. Il comando usa il cmdlet Invoke-Command per rimuovere i dati di tipo esteso per tutti i tipi CIM nelle sessioni nella variabile $S.

Parametri

-Confirm

Richiede la conferma dell'utente 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 nomi di uno o più file Types.ps1xml. 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 che contiene oggetti TypeData (System.Management.Automation.Runspaces.TypeData) o un comando che ottiene oggetti TypeData, come un comando Get-TypeData. È anche possibile inviare oggetti TypeData tramite pipe 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 un oggetto tramite pipe a Remove-TypeData, Remove-TypeData ottiene il nome del tipo dell'oggetto e rimuove tutti i dati del 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 l'esito in caso di 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 l'oggetto TypeData , ad esempio quelli restituiti dal cmdlet Get-TypeData, a Remove-TypeData.

String

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

Output

None

Questo cmdlet non genera alcun 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.