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 dei tipi estesi dalla sessione corrente. Questo cmdlet influisce solo sulla sessione corrente e sulle sessioni create nella sessione corrente.
È possibile aggiungere proprietà e metodi agli oggetti in PowerShell definendoli nei comandi Update-TypeData
e nei file Types.ps1xml
.
Remove-TypeData
elimina le proprietà estese e i metodi dalla sessione corrente.
Remove-TypeData
non elimina i file di Types.ps1xml
né elimina le definizioni dei tipi estesi dai file di Types.ps1xml
. Per altre informazioni sui file di Types.ps1xml
, 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 file di Types.ps1xml
e dati di tipo dinamico aggiunti alla sessione usando il cmdlet Update-TypeData
.
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 di System.DateTime. L'output mostra che una proprietà DateTime è stata aggiunta a tutti gli oggetti System.DateTime in PowerShell. Il cmdlet Get-Date
restituisce un oggetto System.DateTime. Il comando usa la notazione punto per ottenere il valore della proprietà DateTime dell'oggetto System.DateTime restituito da Get-Date
.
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 Get-TypeData
successivo per ottenere tutti i dati dei tipi estesi per il tipo System.DateTime e le pipe al cmdlet Remove-TypeData
per eliminare i dati del tipo esteso. L'ultimo cmdlet Get-Date
mostra l'effetto dell'eliminazione dei dati di tipo esteso per il tipo di 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 utilizzato il parametro Path del cmdlet Remove-TypeData
per rimuovere i tipi estesi definiti nei file Types.ps1xml
aggiunti dal PSScheduledJob e moduli di PSWorkflow. Questo comando non influisce sui dati di tipo dinamico aggiunti tramite il cmdlet Update-TypeData
. Il comando ha esito positivo 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 cmdlet Invoke-Command
per rimuovere i dati dei tipi estesi per tutti i tipi CIM nelle sessioni nella variabile $S
.
Invoke-Command -Session $S {Get-TypeData -TypeName *CIM* | Remove-TypeData}
Parametri
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Tipo: | SwitchParameter |
Alias: | cf |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | 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ù file Types.ps1xml
. I caratteri jolly non sono supportati. Se si omette il percorso, il percorso predefinito è la directory corrente.
Tipo: | String[] |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | 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 comando Get-TypeData
. È anche possibile inviare tramite pipe oggetti TypeData a Remove-TypeData
.
Tipo: | TypeData |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | 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 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.
Tipo: | String |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
-WhatIf
Mostra cosa accadrebbe se il cmdlet viene eseguito. Il cmdlet non viene eseguito.
Tipo: | SwitchParameter |
Alias: | wi |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
È possibile inviare tramite pipe un oggetto TypeData, ad esempio quelli restituiti dal cmdlet Get-TypeData
, a questo cmdlet.
È 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 alcun output.
Note
Remove-TypeData
possibile rimuovere solo i dati di tipo esteso nella sessione corrente. Non è possibile rimuovere dati di tipo estesi presenti nel computer, ma non aggiunti alla sessione corrente, ad esempio i tipi estesi definiti nei moduli che non sono stati importati nella sessione corrente.