PowerShell: วิธีแสดงรายการคุณสมบัติของวัตถุทั้งหมด
บ่อยครั้งคุณอาจต้องการดูคุณสมบัติทั้งหมดของวัตถุใน PowerShell
วิธีที่ง่ายที่สุดในการดำเนินการคือการใช้ cmdlet Get-Member ดังนี้:
Get-ChildItem $my_file | Get-Member
ตัวอย่างนี้จะดึงคุณสมบัติทั้งหมดสำหรับไฟล์ที่บันทึกไว้ในตำแหน่งที่ระบุโดยตัวแปร $my_file
ในบางครั้ง Get-Member cmdlet จะส่งกลับเฉพาะคุณสมบัติที่สำคัญของวัตถุบางอย่างหรือเฉพาะคุณสมบัติที่ไม่เป็นค่าว่างเท่านั้น
หากต้องการบังคับให้ PowerShell แสดงคุณสมบัติ ทั้งหมด สำหรับวัตถุที่กำหนด คุณสามารถระบุ Format-List * ได้ดังนี้:
Get-ChildItem $my_file | Get-Member | Format-List *
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ
ตัวอย่าง: วิธีแสดงรายการคุณสมบัติของวัตถุทั้งหมดใน PowerShell
สมมติว่าเรามีไฟล์อยู่ที่เส้นทางต่อไปนี้:
c:\users\bobbi\nba_data.csvเราสามารถใช้ Get-ChildItem cmdlet เพื่อดึงข้อมูลพื้นฐานบางอย่างเกี่ยวกับไฟล์นี้:
$my_folder = 'c:\users\bobbi\nba_data.csv'
Get-ChildItem $my_folderภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
โปรดสังเกตว่าสิ่งนี้ส่งคืนออบเจ็กต์ที่มีคุณสมบัติสี่อย่าง: โหมด, LastWriteTime, ความยาว และ ชื่อ
สมมติว่าเราต้องการคืนคุณสมบัติทั้งหมดสำหรับวัตถุนี้
เราสามารถใช้ Get-Member cmdlet เพื่อดำเนินการดังกล่าว:
Get-ChildItem $my_file | Get-Memberภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
ภาพหน้าจอแสดงเฉพาะคุณสมบัติ 17 แรกของออบเจ็กต์ แต่คุณสมบัติทั้งหมด 50 จะแสดงในคอนโซล
หากต้องการบังคับให้ PowerShell แสดงคุณสมบัติ ทั้งหมด สำหรับออบเจ็กต์นี้ เราสามารถใช้ไวยากรณ์ต่อไปนี้:
Get-ChildItem $my_file | Get-Member | Format-List *ภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
ซึ่งจะส่งคืนคุณสมบัติทั้งหมด 54 สำหรับออบเจ็กต์
หากคุณต้องการดูจำนวนคุณสมบัติของออบเจ็กต์ คุณสามารถใช้วิธี นับ ได้ดังนี้:
(Get-ChildItem $my_file | Get-Member | Measure-Object).Count
(Get-ChildItem $my_file | Get-Member | Format-List * | Measure-Object).Countภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
โปรดสังเกตว่าวิธีแรกส่งคืนคุณสมบัติทั้งหมด 50 ในขณะที่ใช้ Format-List * ช่วยให้เราเห็นคุณสมบัติ 54 ทั้งหมดของออบเจ็กต์
หมายเหตุ: คุณสามารถดูเอกสารฉบับสมบูรณ์สำหรับ Get-Member cmdlet ใน PowerShell ได้ที่นี่



