Udostępnij za pośrednictwem


Remove-TypeData

Usuwa typy rozszerzone z bieżącej sesji.

Składnia

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

Opis

Polecenie Remove-TypeData cmdlet usuwa dane typu rozszerzonego z bieżącej sesji. To polecenie cmdlet ma wpływ tylko na bieżącą sesję i sesje utworzone w bieżącej sesji.

Właściwości i metody można dodawać do obiektów w programie PowerShell, definiując je w Update-TypeData poleceniach i Types.ps1xml plikach. Remove-TypeData Usuwa te rozszerzone właściwości i metody z bieżącej sesji. Remove-TypeData nie usuwa Types.ps1xml plików ani nie usuwa żadnych rozszerzonych definicji typów z Types.ps1xml plików. Aby uzyskać więcej informacji na temat Types.ps1xml plików, zobacz about_Types.ps1xml.

To polecenie cmdlet zostało wprowadzone w programie Windows PowerShell 3.0.

Przykłady

Przykład 1. Usuwanie danych typu dla określonego typu

Ten przykład usuwa wszystkie dane typu dla typu System.Array z sesji, w tym dane typu dodane przez plik i dane typu dynamicznego Types.ps1xml dodane do sesji przy użyciu Update-TypeData polecenia cmdlet .

Remove-TypeData -TypeName System.Array

Przykład 2: Usuwanie rozszerzonego typu danych z sesji

W tym przykładzie pokazano efekt usuwania danych typu rozszerzonego z sesji. Pierwszy Get-TypeData pobiera dane typu rozszerzonego dla typu System.DateTime . Dane wyjściowe pokazują, że właściwość DateTime została dodana do wszystkich obiektów System.DateTime w programie PowerShell. Polecenie Get-Date cmdlet zwraca obiekt System.DateTime . Polecenie używa notacji kropkowej, aby uzyskać wartość właściwości DateTime obiektu System.DateTime, który Get-Date zwraca.

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

Następne Get-TypeData polecenie cmdlet umożliwiające pobranie wszystkich danych typu rozszerzonego dla typu System.DateTime i potoków do Remove-TypeData polecenia cmdlet w celu usunięcia danych typu rozszerzonego. Get-Date Ostatnie polecenie cmdlet pokazuje efekt usuwania danych typu rozszerzonego dla typu System.DateTime. Ponieważ właściwość System.DateTime już nie istnieje, polecenie umożliwiające uzyskanie jej wartości nie zwraca niczego.

Przykład 3. Usuwanie typów rozszerzonych dla modułów

W tym przykładzie usunięto wszystkie dane typu rozszerzonego dla obiektów modułu. Podczas potoku obiektu do Remove-TypeDataobiektu Remove-TypeData pobiera nazwę typu obiektu i usuwa wszystkie dane typu dla wszystkich obiektów tego typu.

Get-Module | Remove-TypeData

Przykład 4. Usuwanie typów rozszerzonych z określonych modułów

W tym przykładzie użyto parametru Remove-TypeData Path polecenia cmdlet w celu usunięcia typów rozszerzonych zdefiniowanych w Types.ps1xml plikach dodawanych przez moduły PSScheduledJob i PSWorkflow. To polecenie nie ma wpływu na dane typu dynamicznego, które są dodawane przy użyciu Update-TypeData polecenia cmdlet . Polecenie powiedzie się tylko wtedy, gdy moduły zostały zaimportowane do bieżącej sesji.

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

Aby uzyskać więcej informacji na temat modułów, zobacz about_Modules.

Przykład 5. Usuwanie typów rozszerzonych z sesji zdalnej

W tym przykładzie usunięto typy rozszerzone z sesji zdalnej. Polecenie używa Invoke-Command polecenia cmdlet , aby usunąć dane typu rozszerzonego dla wszystkich typów modelu CIM w sesjach w zmiennej $S .

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

Parametry

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Path

Określa tablicę plików usuwanych przez to polecenie cmdlet z danych typu rozszerzonego sesji. Ten parametr jest wymagany.

Wprowadź ścieżki i nazwy plików co najmniej jednego Types.ps1xml pliku. Symbole wieloznaczne nie są obsługiwane. Jeśli pominięto ścieżkę, domyślną lokalizacją jest bieżący katalog.

Typ:String[]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-TypeData

Określa typ danych usuwanych przez to polecenie cmdlet z sesji. Ten parametr jest wymagany. Wprowadź zmienną zawierającą obiekty TypeData (System.Management.Automation.Runspaces.TypeData) lub polecenie, które pobiera obiekty TypeData , takie jak Get-TypeData polecenie. Można również potokować obiekty TypeData do Remove-TypeDataelementu .

Typ:TypeData
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-TypeName

Określa typy, dla których to polecenie cmdlet usuwa wszystkie dane typu rozszerzonego. W przypadku typów w przestrzeni nazw systemu wprowadź krótką nazwę. W przeciwnym razie wymagana jest pełna nazwa typu. Symbole wieloznaczne nie są obsługiwane.

Nazwy typów potoku można przekazać do Remove-TypeData. Podczas potoku obiektu do Remove-TypeDataobiektu Remove-TypeData pobiera nazwę typu obiektu i usuwa wszystkie dane typu dla typu obiektu.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

TypeData

Do tego polecenia cmdlet można przekazać potok obiektu TypeData , takiego jak te, które Get-TypeData zwraca polecenie cmdlet.

String

Możesz potokować ciąg zawierający nazwę typu do tego polecenia cmdlet. Podczas potoku obiektu do tego polecenia cmdlet pobiera nazwę typu obiektu i usuwa wszystkie dane typu dla typu obiektu.

Dane wyjściowe

None

To polecenie cmdlet nie zwraca żadnych danych wyjściowych.

Uwagi

Remove-TypeData program może usunąć tylko dane typu rozszerzonego w bieżącej sesji. Nie można usunąć danych typu rozszerzonego, które znajdują się na komputerze, ale nie zostały dodane do bieżącej sesji, takie jak typy rozszerzone zdefiniowane w modułach, które nie zostały zaimportowane do bieżącej sesji.