ค้นหาเว็บไซต์

ลบ-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 PM

Get-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 สามารถลบเฉพาะข้อมูลประเภทขยายในเซสชันปัจจุบัน ไม่สามารถลบข้อมูลประเภทเพิ่มเติมที่อยู่ในคอมพิวเตอร์ได้ แต่ไม่ได้ถูกเพิ่มลงในเซสชันปัจจุบัน เช่น ประเภทเพิ่มเติมที่กำหนดไว้ในโมดูลที่ไม่ได้นำเข้าไปยังเซสชันปัจจุบัน

บทความที่เกี่ยวข้อง