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-TypeData
obiektu 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-TypeData
elementu .
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-TypeData
obiektu 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
Do tego polecenia cmdlet można przekazać potok obiektu TypeData , takiego jak te, które Get-TypeData
zwraca polecenie cmdlet.
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.