Freigeben über


Remove-TypeData

Löscht erweiterte Typen aus der aktuellen Sitzung.

Syntax

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

Beschreibung

Das Remove-TypeData Cmdlet löscht erweiterte Typdaten aus der aktuellen Sitzung. Dieses Cmdlet wirkt sich nur auf die aktuelle Sitzung und Sitzungen aus, die in der aktuellen Sitzung erstellt werden.

Sie können Objekten in PowerShell Eigenschaften und Methoden hinzufügen, indem Sie sie in Update-TypeData Befehlen und Types.ps1xml Dateien definieren. Remove-TypeData löscht diese erweiterten Eigenschaften und Methoden aus der aktuellen Sitzung. Remove-TypeData löscht die Types.ps1xml Dateien nicht oder löscht keine erweiterten Typdefinitionen aus den Types.ps1xml Dateien. Weitere Informationen zu Types.ps1xml Dateien finden Sie unter about_Types.ps1xml.

Dieses Cmdlet wurde in Windows PowerShell 3.0 eingeführt.

Beispiele

Beispiel 1: Entfernen von Typdaten für einen angegebenen Typ

In diesem Beispiel werden alle Typdaten für den System.Array-Typ aus der Sitzung gelöscht, einschließlich Typdaten, die von einer Types.ps1xml Datei und dynamischen Typdaten hinzugefügt wurden, die der Sitzung mithilfe des Update-TypeData Cmdlets hinzugefügt wurden.

Remove-TypeData -TypeName System.Array

Beispiel 2: Entfernen eines erweiterten Datentyps aus einer Sitzung

In diesem Beispiel wird der Effekt gezeigt, dass erweiterte Typdaten aus einer Sitzung entfernt werden. Der erste Get-TypeData ruft erweiterte Typdaten für den System.DateTime-Typ ab. Die Ausgabe zeigt, dass allen System.DateTime-Objekten in PowerShell eine DateTime-Eigenschaft hinzugefügt wurde. Das Get-Date Cmdlet gibt ein System.DateTime-Objekt zurück. Der Befehl verwendet die Punktnotation, um den Wert der DateTime-Eigenschaft des zurückgegebenen System.DateTime-Objekts Get-Date abzurufen.

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

Das nächste Get-TypeData Cmdlet, um alle erweiterten Typdaten für den System.DateTime-Typ abzurufen, und rohren sie an das Remove-TypeData Cmdlet, um die erweiterten Typdaten zu löschen. Das letzte Get-Date Cmdlet zeigt die Auswirkung des Löschens der erweiterten Typdaten für den System.DateTime-Typ . Da die System.DateTime-Eigenschaft nicht mehr vorhanden ist, gibt ein Befehl zum Abrufen seines Werts nichts zurück.

Beispiel 3: Entfernen erweiterter Typen für Module

In diesem Beispiel werden alle erweiterten Typdaten für Modulobjekte entfernt. Wenn Sie ein Objekt an Remove-TypeDataeine Strichstriche zuweisen, Remove-TypeData ruft den Namen des Objekttyps ab und entfernt alle Typdaten für alle Objekte dieses Typs.

Get-Module | Remove-TypeData

Beispiel 4: Entfernen erweiterter Typen aus angegebenen Modulen

In diesem Beispiel wird der Path-Parameter des Remove-TypeData Cmdlets verwendet, um die erweiterten Typen zu entfernen, die in den Types.ps1xml Dateien definiert sind, die von den PSScheduledJob - und PSWorkflow-Modulen hinzugefügt werden. Dieser Befehl wirkt sich nicht auf dynamische Typdaten aus, die mithilfe des Update-TypeData Cmdlets hinzugefügt werden. Der Befehl ist nur erfolgreich, wenn die Module in die aktuelle Sitzung importiert wurden.

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

Weitere Informationen zu Modulen finden Sie unter about_Modules.

Beispiel 5: Entfernen erweiterter Typen aus einer Remotesitzung

In diesem Beispiel werden erweiterte Typen aus einer Remotesitzung entfernt. Der Befehl verwendet das Invoke-Command Cmdlet, um erweiterte Typdaten für alle CIM-Typen in den Sitzungen in der $S Variablen zu entfernen.

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

Parameter

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Path

Gibt ein Array von Dateien an, die dieses Cmdlet aus den Erweiterten Typdaten der Sitzung löscht. Dieser Parameter ist erforderlich.

Geben Sie die Pfade und Dateinamen einer oder mehrerer Types.ps1xml Dateien ein. Platzhalter werden nicht unterstützt. Wenn Sie den Pfad weglassen, wird als Standardspeicherort das aktuelle Verzeichnis verwendet.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-TypeData

Gibt die Typdaten an, die dieses Cmdlet aus der Sitzung löscht. Dieser Parameter ist erforderlich. Geben Sie eine Variable ein, die TypeData-Objekte (System.Management.Automation.Runspaces.TypeData) enthält, oder einen Befehl, der TypeData-Objekte abruft, z. B. einen Get-TypeData Befehl. Sie können auch TypeData-Objekte an Remove-TypeData.

Typ:TypeData
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-TypeName

Gibt die Typen an, für die dieses Cmdlet alle erweiterten Typdaten löscht. Geben Sie für Typen im System-Namespace den kurzen Namen ein. Für andere Typen ist der vollständige Typname erforderlich. Platzhalter werden nicht unterstützt.

Sie können Typnamen Remove-TypeDataan . Wenn Sie ein Objekt Remove-TypeDataans pipen, Remove-TypeData ruft den Typnamen des Objekts ab und entfernt alle Typdaten für den Objekttyp.

Typ:String
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

TypeData

Sie können ein TypeData-Objekt , z. B. die, die das Get-TypeData Cmdlet zurückgibt, an dieses Cmdlet weiterleiten.

String

Sie können eine Zeichenfolge mit dem Typnamen an dieses Cmdlet weiterleiten. Wenn Sie ein Objekt an dieses Cmdlet weiterleiten, ruft es den Typnamen des Objekts ab und entfernt alle Typdaten für den Objekttyp.

Ausgaben

None

Dieses Cmdlet gibt keine Ausgabe zurück.

Hinweise

Remove-TypeData kann nur die erweiterten Typdaten in der aktuellen Sitzung entfernen. Es kann nicht erweiterte Typdaten entfernen, die sich auf dem Computer befinden, jedoch nicht der aktuellen Sitzung hinzugefügt wurden, wie erweiterte Typen, die in Modulen definiert sind, die aber nicht in die aktuelle Sitzung importiert wurden.