Remove-TypeData
刪除目前會話中的擴展型別。
語法
RemoveTypeDataSet (預設值)
Remove-TypeData
-TypeData <TypeData>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
RemoveTypeSet
Remove-TypeData
[-TypeName] <String>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
RemoveFileSet
Remove-TypeData
-Path <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Remove-TypeData指令檔會刪除當前會話中的擴展型別資料。 此指令檔僅影響目前會話及在該會話中建立的會話。
你可以在 PowerShell 中為物件加上屬性和方法,透過在指令和Update-TypeData檔案中定義Types.ps1xml它們。
Remove-TypeData 刪除目前會話中那些擴充屬性和方法。
Remove-TypeData 不會刪除 Types.ps1xml 檔案或刪除檔案中 Types.ps1xml 的任何擴展型別定義。 如需 Types.ps1xml 檔案的詳細資訊,請參閱 about_Types.ps1xml。
此 Cmdlet 已在 Windows PowerShell 3.0 中引進。
範例
範例 1:移除指定型別的型別資料
此範例會從會話中刪除所有 System.Array 類型的類型資料,包括由 Types.ps1xml 檔案新增的型別資料,以及透過 Update-TypeData cmdlet 加入會話的動態型別資料。
Remove-TypeData -TypeName System.Array
範例 2:從會話中移除擴充資料型別
此範例展示了從會話中移除擴展型別資料的效果。 第一個 Get-TypeData 會取得 System.DateTime 型態的擴展型別資料。 輸出顯示 PowerShell 中所有 System.DateTime 物件都新增了 DateTime 屬性。 指令檔會 Get-Date 回傳 一個 System.DateTime 物件。 指令使用 dot 表示法來取得 System.DateTime 物件 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
下一個 Get-TypeData cmdlet 是取得 System.DateTime 類型的所有擴展型別資料,然後把它送到 Remove-TypeData cmdlet 以刪除擴展型別資料。 最後一個 Get-Date cmdlet 展示了刪除 System.DateTime 型別擴充型別資料的效果。 由於 System.DateTime 屬性已不存在,取得其值的指令不會回傳任何東西。
範例 3:移除模組的擴展型別
此範例移除了模組物件的所有擴充型別資料。 當你將物件管道傳送到 Remove-TypeData時, Remove-TypeData 會取得該物件類型的名稱,並移除該類型所有物件的類型資料。
Get-Module | Remove-TypeData
範例 4:從指定模組中移除擴展型別
此範例使用 cmdlet 的 Remove-TypeData 參數,移除由 Types.ps1xml 與 PSWorkflow 模組新增的檔案中定義的擴展型別。 此指令不會影響使用 Update-TypeData cmdlet 所新增的動態型別資料。 該指令僅在模組已匯入當前工作階段時成功。
Remove-TypeData -Path "$PSHOME\Modules\PSScheduledJob", "$PSHOME\Modules\PSWorkflow\PSWorkflow.types.ps1xml"
如需模組的詳細資訊,請參閱 about_Modules。
範例 5:從遠端工作階段移除擴展型別
此範例移除遠端會話中的擴展型別。 該指令使用 Invoke-Command cmdlet 來移除變數中會話 $S 中所有 CIM 類型的擴展型別資料。
Invoke-Command -Session $S {Get-TypeData -TypeName *CIM* | Remove-TypeData}
參數
-Confirm
在執行 Cmdlet 之前,提示您進行確認。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | False |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | 參見 |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Path
指定一個檔案陣列,該指令本會從會話擴展型態資料中刪除。 此為必要參數。
輸入一個或多個 Types.ps1xml 檔案的路徑與檔名。 不支援通配符。 如果你省略路徑,預設位置就是目前的目錄。
參數屬性
| 類型: | String[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
RemoveFileSet
| Position: | Named |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-TypeData
指定此 cmdlet 從會話中刪除的類型資料。 此為必要參數。 輸入包含 TypeData 物件的變數(System.Management.Automation.Runspaces.TypeData)或取得 TypeData 物件的指令,例如 Get-TypeData 指令。 你也可以將 TypeData 物件管道連接到 Remove-TypeData。
參數屬性
| 類型: | TypeData |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
RemoveTypeDataSet
| Position: | Named |
| 必要: | True |
| 來自管線的值: | True |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-TypeName
指定此指令刪除所有擴展型別資料的類型。 在系統命名空間中,請輸入簡短名稱。 否則,需要完整類型名稱。 不支援通配符。
您可以使用管線將類型名稱傳送至 Remove-TypeData。 當你將物件 Remove-TypeData導向 時, Remove-TypeData 會取得該物件的類型名稱,並移除該物件類型的所有類型資料。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
RemoveTypeSet
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | True |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-WhatIf
顯示 Cmdlet 執行時會發生什麼事。 指令未執行。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | False |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | 威斯康辛 |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 cmdlet 支援常見參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
輸入
TypeData
你可以將 TypeData 物件(例如 Get-TypeData cmdlet 回傳的物件)管道傳送到這個 cmdlet。
String
你可以將包含類型名稱的字串輸入這個 cmdlet。 當你把物件管道傳到這個 cmdlet 時,它會取得該物件的類型名稱,並移除該物件類型的所有類型資料。
輸出
None
此 Cmdlet 不會傳回任何輸出。
備註
Remove-TypeData 只能移除目前會話中的擴展型別資料。 它無法移除電腦上尚未加入目前會話的擴充型別資料,例如未匯入當前會話模組中定義的擴展型別。