ลบ-TypeData (Microsoft.PowerShell.Utility)
Remove-TypeData
- โมดูล :
- Microsoft.PowerShell.Utility
ลบประเภทเพิ่มเติมออกจากเซสชันปัจจุบัน
ไวยากรณ์
Remove-TypeData
-TypeData <TypeData>
[-WhatIf]
[-Confirm]
[<CommonParameters>]Remove-TypeData
[-TypeName] <String>
[-WhatIf]
[-Confirm]
[<CommonParameters>]Remove-TypeData
-Path <String[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]คำอธิบาย
cmdlet Remove-TypeData จะลบข้อมูลชนิดขยายออกจากเซสชันปัจจุบัน cmdlet นี้มีผลเฉพาะเซสชันปัจจุบันและเซสชันที่สร้างขึ้นในเซสชันปัจจุบัน
คุณสามารถเพิ่มคุณสมบัติและวิธีการให้กับออบเจ็กต์ใน 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 และข้อมูลประเภทไดนามิกที่เพิ่มเข้าไป เซสชันโดยใช้ cmdlet Update-TypeData
Remove-TypeData -TypeName System.Arrayตัวอย่างที่ 2: ลบชนิดข้อมูลที่ขยายออกจากเซสชัน
ตัวอย่างนี้แสดงผลของการเอาข้อมูลชนิดขยายออกจากเซสชัน Get-TypeData แรกได้รับข้อมูลประเภทขยายสำหรับประเภท System.DateTime ผลลัพธ์แสดงให้เห็นว่ามีการเพิ่มคุณสมบัติ DateTime ให้กับวัตถุ System.DateTime ทั้งหมดใน PowerShell cmdlet Get-Date ส่งกลับวัตถุ System.DateTime คำสั่งใช้เครื่องหมายจุดเพื่อรับค่าของคุณสมบัติ DateTime ของออบเจ็กต์ 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 PMGet-TypeData cmdlet ถัดไปเพื่อรับข้อมูลประเภทขยายทั้งหมดสำหรับประเภท System.DateTime และไปป์ที่ไปยัง cmdlet Remove-TypeData ที่จะลบ ข้อมูลประเภทขยาย cmdlet Get-Date สุดท้ายแสดงผลของการลบข้อมูลประเภทขยายสำหรับประเภท System.DateTime เนื่องจากคุณสมบัติ System.DateTime ไม่มีอยู่แล้ว คำสั่งเพื่อรับค่าของมันจึงไม่ส่งคืนสิ่งใดเลย
ตัวอย่างที่ 3: ลบประเภทเพิ่มเติมสำหรับโมดูล
ตัวอย่างนี้จะลบข้อมูลชนิดขยายทั้งหมดสำหรับอ็อบเจ็กต์โมดูล เมื่อคุณไปป์วัตถุไปที่ Remove-TypeData, Remove-TypeData จะได้รับชื่อของประเภทวัตถุและลบข้อมูลประเภททั้งหมดสำหรับวัตถุทุกประเภทนั้น
Get-Module | Remove-TypeDataตัวอย่างที่ 4: ลบประเภทขยายออกจากโมดูลที่ระบุ
ตัวอย่างนี้ใช้พารามิเตอร์ Path ของ cmdlet Remove-TypeData เพื่อลบประเภทเพิ่มเติมที่กำหนดไว้ในไฟล์ Types.ps1xml ที่เพิ่มเข้ามา โดยโมดูล PSScheduledJob และ PSWorkflow คำสั่งนี้ไม่ส่งผลต่อข้อมูลชนิดไดนามิกที่ถูกเพิ่มโดยใช้ cmdlet Update-TypeData คำสั่งจะสำเร็จก็ต่อเมื่อมีการนำเข้าโมดูลเข้าสู่เซสชันปัจจุบันเท่านั้น
Remove-TypeData -Path "$PSHOME\Modules\PSScheduledJob", "$PSHOME\Modules\PSWorkflow\PSWorkflow.types.ps1xml"สำหรับข้อมูลเพิ่มเติมเกี่ยวกับโมดูล โปรดดูที่ about_Modules
ตัวอย่างที่ 5: ลบประเภทเพิ่มเติมออกจากเซสชันระยะไกล
ตัวอย่างนี้จะลบประเภทเพิ่มเติมออกจากเซสชันระยะไกล คำสั่งใช้ Inrigger-Command cmdlet เพื่อลบข้อมูลประเภทขยายสำหรับ CIM ทุกประเภทในเซสชันในตัวแปร $S
Invoke-Command -Session $S {Get-TypeData -TypeName *CIM* | Remove-TypeData}พารามิเตอร์
-Confirm
แจ้งให้คุณยืนยันก่อนเรียกใช้ cmdlet
- พิมพ์ :
SwitchParameter
- นามแฝง :
cf
- ตำแหน่ง:
ตั้งชื่อ
- ค่าเริ่มต้น:
-
False
- ที่จำเป็น:
False
- ยอมรับอินพุตไปป์ไลน์:
False
- ยอมรับอักขระตัวแทน:
False
-Path
ระบุอาร์เรย์ของไฟล์ที่ cmdlet นี้ลบออกจากข้อมูลประเภทส่วนขยายของเซสชัน จำเป็นต้องมีพารามิเตอร์นี้
ป้อนเส้นทางและชื่อไฟล์ของไฟล์ Types.ps1xml อย่างน้อย 1 ไฟล์ ไม่รองรับไวด์การ์ด หากคุณละเว้นเส้นทาง ตำแหน่งเริ่มต้นคือไดเร็กทอรีปัจจุบัน
- พิมพ์ :
String[]
- ตำแหน่ง:
ตั้งชื่อ
- ค่าเริ่มต้น:
None
- ที่จำเป็น:
True
- ยอมรับอินพุตไปป์ไลน์:
-
False
- ยอมรับอักขระตัวแทน:
False
-TypeData
ระบุข้อมูลชนิดที่ cmdlet นี้ลบออกจากเซสชัน จำเป็นต้องมีพารามิเตอร์นี้ ป้อนตัวแปรที่มีออบเจ็กต์ TypeData (System.Management.Automation.Runspaces.TypeData) หรือคำสั่งที่ได้รับออบเจ็กต์ TypeData เช่น คำสั่ง Get-TypeData คุณยังสามารถไปป์วัตถุ TypeData ไปยัง Remove-TypeData ได้อีกด้วย
- พิมพ์ :
TypeData
- ตำแหน่ง:
ตั้งชื่อ
- ค่าเริ่มต้น:
None
- ที่จำเป็น:
True
- ยอมรับอินพุตไปป์ไลน์:
True
- ยอมรับอักขระตัวแทน:
False
-TypeName
ระบุชนิดที่ cmdlet นี้ลบข้อมูลชนิดขยายทั้งหมด สำหรับประเภทในเนมสเปซของระบบ ให้ป้อนชื่อแบบสั้น มิฉะนั้น จะต้องระบุชื่อเต็ม ไม่รองรับไวด์การ์ด
คุณสามารถไปป์ชื่อประเภทเพื่อ Remove-TypeData เมื่อคุณไปป์วัตถุไปที่ Remove-TypeData, Remove-TypeData จะได้รับชื่อประเภทของวัตถุและลบข้อมูลประเภททั้งหมดสำหรับประเภทวัตถุนั้น
- พิมพ์ :
String
- ตำแหน่ง:
0
- ค่าเริ่มต้น:
None
- ที่จำเป็น:
True
- ยอมรับอินพุตไปป์ไลน์:
True
- ยอมรับอักขระตัวแทน:
False
-WhatIf
แสดงสิ่งที่จะเกิดขึ้นหาก cmdlet ทำงาน cmdlet ไม่ทำงาน
- พิมพ์ :
SwitchParameter
- นามแฝง :
wi
- ตำแหน่ง:
ตั้งชื่อ
- ค่าเริ่มต้น:
False
- ที่จำเป็น:
False
- ยอมรับอินพุตไปป์ไลน์:
False
- ยอมรับอักขระตัวแทน:
False
อินพุต
ประเภทข้อมูล
คุณสามารถไพพ์ออบเจ็กต์ TypeData เช่นออบเจ็กต์ที่ Get-TypeData cmdlet ส่งคืนไปยัง cmdlet นี้
สตริง
คุณสามารถไพพ์สตริงที่มีชื่อประเภทไปยัง cmdlet นี้ เมื่อคุณไปป์วัตถุกับ cmdlet นี้จะได้รับชื่อประเภทของวัตถุและลบข้อมูลประเภททั้งหมดสำหรับประเภทวัตถุนั้น
เอาท์พุต
ไม่มี
cmdlet นี้ส่งคืนไม่มีผลลัพธ์
หมายเหตุ
Remove-TypeData สามารถลบเฉพาะข้อมูลประเภทขยายในเซสชันปัจจุบัน ไม่สามารถลบข้อมูลประเภทเพิ่มเติมที่อยู่ในคอมพิวเตอร์ได้ แต่ไม่ได้ถูกเพิ่มลงในเซสชันปัจจุบัน เช่น ประเภทเพิ่มเติมที่กำหนดไว้ในโมดูลที่ไม่ได้นำเข้าไปยังเซสชันปัจจุบัน